Было бы хорошо, если была бы возможность сортировать элементы не только по кол-ву тегов, но и по количеству совпадений тегов элемента и указанных тегов в фильтре. Очень удобно для вывода дополнительных блоков, например: акции, спецпредложения и т.д.
Т.е. сейчас есть возможность выбрать элементы по тегам, но далеко не факт, что первый элемент блока будет наиболее подходящим по контексту страницы, поскольку имеет один совпадающий тег, а не три или четыре. Да и далеко не факт, что элемент более соответствующий контексту вообще попадет в выборку, если допустим мы поставили ограничение в 3-5 элементов.
Варианты решения:
1. Более универсальный вариант, поскольку позволит решать не только данную задачу, но придется логику выборки элементов описывать самому. При передаче в фильтр компонента массива ID элементов - сохранить порядок согласно тому, который указан в фильтре ID. Так скажем - возможность пользовательской сортировки, с явным указанием порядка элементов.
2. Непосредственно добавить параметр для массива $arOrder компонентов, который будет отрабатывать согласно логике описанной выше. Т.е. сортировка элементов по кол-ву совпадений тегов, подбор наиболее подходящих материалов по контексту страницы.