как правильно реализовать меню категорий товара из ссылками на фильтры по значению TV поля?

может не совсем понятно сформулирован вопрос, но на скрине суть должна стать ясной

вроде типичная задача для магазинов
где «виды», «место» и т.д. это тв-поля
для каждой категории вывести надо значения этих полей (если они содержатся в товарах категории)
а ссылка должна вести на категорию с выбранным фильтром
ну т.е. выбирают люстры со стилем Ампир и ссылка такого типа будет /lyustryi/?tv|ms_type-svet=Ампир
можете подсказать, с какой стороны подойти к этой задачи?
ведь кейс не редкий, а я в апи модх не силен, что бы это все «обкрутить» через снипеты
alexandr.skyrda
28 февраля 2024, 00:59
modx.pro
1 872
0

Как ускорить работу mSearch2?

На сайте почти 100 тыс товаров. Поиск mSearch2 по некоторым запросам может доходить до полминуты. Вызов стандартный:

{var $res = $_modx -> runSnippet('!msearch2', [
    'parents' => 2,
    'returnIds' => 1,
    'limit' => 'none'
])}

{$_modx -> runSnippet('!pdoPage', [
    'element' => 'msProducts'
    'parents' => 2,
    'resources' => $res,
    'where' => '{"Data.remains:>=": 1}',
    'tpl' => '@FILE chunks/tovarPreview4row.tpl',
    'includeThumbs' => '140x140',
    'limit' => 24,
    'showLog' => 1
])}


Как можно ускорить выборку?
Например чтобы искал только по полю pagetitle?
ViktorK
27 февраля 2024, 22:10
modx.pro
412
0

Почему путь к изображению не полный в msProducts?

Всех приветствую!
Пытаюсь вывести карточки товара с дополнительным полем изображения (system_imagePage) использую msProducts. Но путь к изображению формируется неполный.
{$_modx->runSnippet('msProducts', [
'showHidden' => 0,
'showUnpublished' => 1,
'parents' => 24,
'depth' => 0,
'scheme'=> 'abs',
'sortby' => '{«menuindex»:«ASC»}',
'tvPrefix'=>'',
'includeTVs' => 'catalog_heatingAreaLabel, system_imagePage',
'useWeblinkUrl' => '1',
'tpl' => '@FILE default/chunks/tpl/catalog/item/card.tpl'
])}

Чанк
<div class="col-12 col-md-6 col-xl-4">
  <div class="catalog-item">

      <div class="catalog-item__stickers">
        {if $new} <div class="catalog-item__sticker">Новинка</div> {/if}
        {if $popular} <div class="catalog-item__sticker">Хит</div> {/if}
        {if $favorite} <div class="catalog-item__sticker">Рекомендуем</div> {/if}
      </div>

    <div class="catalog-item__top">
      <div class="catalog-item__image">
        <img src="{$system_imagePage}" alt="{$pagetitle}">
      </div>
      <div class="catalog-item__title"><a class="link-primary" href="{$id | url}">{$pagetitle}</a></div>

      <div class="catalog-item__label">{$catalog_heatingAreaLabel}</div>

      <div class="catalog-item__characteristics">
        {$_modx->runSnippet('msProductOptions', [
          'product' => $id,
          'tpl' => '@FILE default/chunks/tpl/catalog/item/options.tpl',
          'onlyOptions' => 'thermalPower, dimensions, fuelСonsumption, MaximumLogLength, waterVolume, weightWithoutWater'
        ])}
      </div>

      <div class="catalog-item__price-wrapper">
        <span class="catalog-item__price">{$price} ₽</span>
        {if $old_price != 0}
          <span class="catalog-item__old-price">{$old_price} ₽</span>
        {/if}
      </div>
    </div>
    <div class="catalog-item__bottom">
      <form class="form-horizontal ms2_form" method="post">
        <input type="hidden" name="id" value="{$id}"/>
        <input type="hidden" name="count" id="product_price" class="form-control col-md-6" value="1"/>
        <button type="submit" class="btn btn--block btn--brand js-catalog-btn-buy" name="ms2_action"
                value="cart/add">
          Купить
        </button>
      </form>
      <a href="{$id | url}" class="mt-3 btn btn--block
     ">Подробнее</a>
    </div>
  </div>
</div>
Кирилл
27 февраля 2024, 07:31
modx.pro
358
0

modx_session занимает все место приблизительно за неделю.

Здравствуйте.
Я ранее уже сталкивался с большой по объему таблицей modx_session, но на одном из моих сайтов сейчас твориться что-то неведанное. Хостинг отводит под сайт 5 Гб и это место таблица выедает за 1-2 недели. Что с этим можно сделать? Можно ли как-то автоматизировать ее очистку?
Алексей
26 февраля 2024, 09:23
modx.pro
412
0

Проблема с изображением

В дополнительные поля (TV) при сохранении изображения на самом сайте это изображение не отображается
ЦНТБ
26 февраля 2024, 06:42
modx.pro
346
0

[SendIt] Большое обновление загрузки файлов в версии 1.2.1

Приветствую, коллеги. Хочу представить вашему вниманию новую версию, кое-кому полюбившегося компонента Sendit.
Артур Шевченко
25 февраля 2024, 20:59
modx.pro
2
642
+10

Перенос заказов shopkeeper в shopkeeper3

Всем привет.

Может кому-то пригодится. Переносил заказы из shopkeeper в shopkeeper3, использовано на основе сниппета shk_fihook, через консоль. Предварительно сделав бекап таблицы в виде PHP файла.

Пример:
Alexander
25 февраля 2024, 13:39
modx.pro
393
0

Как загрузить данные из PHP после капчи без перезагрузки страницы?

Приветствую.

Опишу ситуацию, чтобы было понятно.
Есть страница сайта. Перед ее отдачей работает код PHP. Этот код проверяет IP-адрес посетителя. Если с IP-адресом все нормально, то посетитель увидит перед собой страницу сайта. Если же IP-адрес попадает под фильтр, то вместо страницы посетитель увидит перед собой капчу. Ну, а как это обычно бывает: если посетитель решает капчу, то ему показывается страница, а если не решает — будет решать капчу до бесконечности, если не надоест, разумеется.

Я не пойму то, как можно отдать посетителю страницу после решения им капчи без перезагрузки страницы. Сайт работает на PHP.
weranda
25 февраля 2024, 12:27
modx.pro
667
0

Доработки по сайту - верстка шапки и подбор товаров

14 14 000
Требуется сделать доработки по сайту dveriklinskie.ru/ — переверстать шапку и сделать подбор товаров.

Сайт работает на MODX Revo, все доработки сначала нужно делать в отдельном шаблоне, потом уже выкатывать на сайт.

Макеты тут — dveriklinskie.ru/psd.rar

Андрей
24 февраля 2024, 13:08
modx.pro
285
0

Два условия whery PdoPage

Есть такой вывод
{$_modx->runSnippet('!pdoPage', [
                'element' => 'migxLoopCollection',
                'classname' => 'HistoryPayment\Model\Payment',
                'tpl' => 'pay',
                'where' =>["status1" => "0", "AND:date1:<"=>"2024-02-23"],
                ])}
как указать условие ИЛИ
"status2" => "0", "AND:date2:<"=>"2024-03-23"
vit
vit
23 февраля 2024, 17:06
modx.pro
396
0