Доработка Evolution 1.0.15 +Shopkeeper 1.2

7
Всем доброго дня,

Имеется интернет-магазин на древней версии modx Evo 1.0.15 + shopkeeper 1.2. Из-за наличия большого количества различных костылей, cms давно не обновляется, но в принципе функционала хватает, за некоторыми исключениями. Учет остатка товаров ведется на сайте. В данный момент есть необходимость несколько раз в день производить списание товаров по списку артикулов. Сейчас делаем это вручную — ищем товар по артикулу на сайте, добавляем в корзину и так по списку, затем оформляем заказ, товары списываются. Необходимо каким-то образом это автоматизировать. На данный момент вижу два пути решения:
Михаил
29 февраля 2024, 11:16
modx.pro
318
-2

mSync и скорость парсинга

Доброе время суток, камрады!

Столкнулся с такой проблемой: при любой конфигурации PHP или mSync нагрузка на сервер не вся, хотя я очень, очень старался. Из-за чего парсинг происходит медленно.

Хостинг beget, 2 CPU, 2 RAM, 30 GB SSD, 1 GB swap, Rocky Linux 9, MariaDB 10.5, PHP 7.4, NGINX.

Что мне такого прописать, чтобы выжать все соки из VPS? Сейчас ни оперативка, ни процессор толком не нагружаются.

Полей в настройках модуля включено буквально штук 5, остальные для выгрузки отключены.

Посоветуйте что-нибудь, вдруг сами сталкивались или настраивали.
Raimei
28 февраля 2024, 22:16
modx.pro
396
0

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

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

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

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

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

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

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

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

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

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

Всем привет.

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

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

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

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

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

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