ksusha, ну тут подразумевается, что если вы знакомы с языком запросов SQL, то логика для вас будет очевидна, т.к. синтаксис фильтра очень прозрачен.
А если вы с этим языком не знакомы, то надо наверное сначала почитать что-нибудь про SQL

Не знаю, можно ли где-то штатными методами cms увидеть лог запросов к БД.
Но в кратце идея такова: существует некий SQL запрос, извлекающий данные вашей ИС из БД. Он обычно имеет вид
SELECT перечень_полей FROM перечень_таблиц WHERE перечень_условий
Этот запрос извлекает из указанных таблиц требуемые поля только тех строк, которые соответствуют всем перечисленным условиям.
Массив
$element['type']=1;
$element['prefix'] = 'and';
$element['property_id'] = 26; // ID св-ва
$element['if'] = '=';
$element['value'] = '1';
$element['sufix'] = '';
описывает еще одно условие для отбора, которое присоединяется к уже существующим с помощью слова and, указанного в $element['prefix']. Само условие формируется с помощью $element['property_id'], $element['if'] и $element['value']. Ну и после условия можно дописать еще что-нибудь с помощью $element['sufix'].
Развернув этот массив в строку, мы получим:
and 26 = 1
при этом учтем, что это не арифметический пример, и на самом деле "26", как имя поля, будет иметь какой-нибудь префикс, типа "property26".
В итоге мы получим запрос вида:
SELECT перечень_полей FROM перечень_таблиц WHERE перечень_условий and property26 = 1
Ну вот как-то так.
Это конечно все очень упрощенно, условно и схематично, но логика именно такая.