Недоступные варианты фильтров не перемещаются в конец списка

Можно заменить

$filters[$filter_id]['variants'][$variant_id]['disabled'] = true;

на

if (!empty($available_variants) && !empty($available_variants[$filter_id])) {
	foreach ($filters[$filter_id]['variants'] as $variant_id => $v) {
		if (empty($available_variants[$filter_id]['variants'][$variant_id])) {
			unset($filters[$filter_id]['variants'][$variant_id]);
			$v['disabled'] = true;
			$filters[$filter_id]['variants'][$variant_id] = $v;
		}
	}
}

И вот эту часть делать не нужно, вызывает конфликт с tpl-шаблоном фильтров:

2 лайка