Руслан

Руслан

С нами с 25 сентября 2022; Место в рейтинге пользователей: #893
Павел Романов
10 февраля 2023, 18:25
1
0
Можно через SimpleSearch получать только id ресурсов и их уже скармливать msProducts, где использовать стандартные методы сортировки, фильтрации и т. д.:

[[!SimpleSearch?
    &containerTpl=`search_container`
    &tpl=`search_id`
]]

Чанк search_id такой:
[[+id]],

А в чанке search_container уже pdoPage и все, что угодно:

<div id="pdopage">
    <div class="rows">
        [[!pdoPage?
            &element=`msProducts`
            &resources=`[[+results:non]]`
            &parents=`7`
            &templates=`5` // шаблон товара
            &sortby=`Data.price`
            //и т .д.
            ]]
    </div>
    [[!+page.nav]]
</div>

Модификатор non нужен, чтобы убрать переносы строк в списке ID:
<?php
return str_replace(array("\r\n", "\r", "\n"), "", $input);
Артур Шевченко
10 февраля 2023, 17:22
1
0
Если предположить, что параметр where не предусмотрен, а я его в доке не нашёл, то вероятно надо сделать так
[[!pdoPage? 
    &element=`SimpleSearch`
    &includeTVs=`1`
    &ids=`[[msProducts?:default=`999999`?returnIds=`1`&limit=`0`&parents=`7`&sortby=`price`]]`
    &docFields=`pagetitle`
    &useAllWords=`1`    
    &limit=`10`
]]