Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!
Проще всего это сделать с помощью яваскрипта, а не php. Как-то так:
if ($arElements == 0) {
echo "<script>$('smart-filter').hide();</script>"
}
Ещё вариант - можно попробовать в result_modifier.php шаблона компонента фильтра получить текущий раздел, найти ко-во элементов, и если элементов нет - сделать return; . Если не сработает return - можно define('HIDE_FILTER');, а в template.php шаблона фильтра if (defined('HIDE_FILTER')) return;
нашел интересную статью, где описано как определять активные элементы http://coder-diary.ru/programming/bitrix-kolichestvo-aktivnyx-elementov-v-razdele-kataloga/
но не хватает знаний, чтобы все правильно совместить.( (