Александр

Александр

Был в сети 06 февраля 2023, 18:32
Заказы не принимаю
В общем, сделал выборку через сниппет. В &resources указываем список исключаемых id, у которых не опубликован родитель.

<?php
$sql = $modx->prepare("SELECT
                          `id`
                      FROM
                          `eZRjUq0u0atk_site_content`
                      WHERE
                          `class_key` = 'msProduct' AND `parent` IN(
                              SELECT
                                  `id`
                              FROM
                                  `eZRjUq0u0atk_site_content`
                              WHERE
                                  `class_key` = 'msCategory' AND `published` = 0
                          )");
$sql->execute();

$output = array();

while ($row = $sql->fetch(PDO::FETCH_ASSOC)) {
  $output[] = "-".$row['id'];
}

return implode(', ',$output);

Работает. Но буду признателен, если кто-нибудь поможет оптимизировать.
А можно как-нибудь сортировать в том же порядке, что и в настройках карточки?



Ситуация следующая: у товара есть размеры XXS, XS, S, M, L, XL, XXL, XXXL.
При вызове msOptionsPrice.option все размеры сортируются только в алфавитном порядке, то есть: M, L, S, XS, XL, XXS, XXL, XXXL.

Параметр size:SORT_DESC меняет только направление, а size:SORT_ASC:SORT_NUMERIC, естественно, ничего вообще не меняет, т.к. тут буквенные размеры.

Как сделать, чтобы выводился порядок XXS, XS, S, M, L, XL, XXL, XXXL?
Спасибо, сейчас проверю на тестовом. В целом этого должно хватить для дальнейшей работы. Осталось только разобраться, как создавать категории и подкатегории и можно покупать компонент.