ViktorK

ViktorK

С нами с 17 февраля 2013; Место в рейтинге пользователей: #492

Как ускорить работу 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
417
0

Контекст при создании кастомного кеша

Хочу кешировать вывод снипета из админки, при редактировании ресурсов (не знаю правильно это или нет?).
Делаю так:
<?php
$modx->cacheManager->delete('newLotsIndex', array(xPDO::OPT_CACHE_KEY=>'custom_cache'));
$date_from = strtotime('-2 month');
$res = $modx->runSnippet('msProducts', array(
	'parents' => 2,
	'limit' => 16,
	'where' => ["publishedon:>" => $date_from, "Data.remains:>=" => 1 ],
        'sortby' => '{"publishedon": "desc"}',
        'tpl' => '@FILE chunks/tovarPreview4row.tpl',
        'includeThumbs' => '140x140'
));
$modx->cacheManager->set('newLotsIndex', $res, 0, array(xPDO::OPT_CACHE_KEY=>'custom_cache'));
Все работает, но в логи забиваются этим:
[2024-01-19 06:12:41] (INFO in modContext::makeUrl @ /var/www/xxxx/www/core/model/modx/modcontext.class.php : 325) Resource with id 140625 was not found in context mgr
[2024-01-19 06:12:41] (WARN @ /var/www/xxxx/www/core/model/modx/modcontext.class.php : 248) `140623` was requested but no alias was located.
[2024-01-19 06:12:41] (INFO in modContext::makeUrl @ /var/www/xxxx/www/core/model/modx/modcontext.class.php : 325) Resource with id 140623 was not found in context mgr
[2024-01-19 06:12:41] (WARN @ /var/www/xxxx/www/core/model/modx/modcontext.class.php : 248) `140623` was requested but no alias was located.


Как можно это исправить? Где указать контекст? Заранее спасибо.
ViktorK
19 января 2024, 09:22
modx.pro
426
0

Не могу подставить параметр в where

Хочу сделать выборку товаров добавленных за последний месяц.

{var $timeago = '@FILE snippets/timeago.php' | snippet }
{'!pdoPage' | snippet : [
	'element' => 'msProducts',
	'tpl' => '@FILE chunks/tovarPreview4row.tpl',
	'parents' => 2,
	'limit' => 48,
	'where' => '{"publishedon:>=": $timeago }',
	'sortby' => '{"publishedon": "desc"}',
        'includeThumbs' => '140x140',
	'showLog' => 1
]}
Снипет timeago.php:
<?php
return strtotime('-1 month');
Не срабатывает. Просто игнорируется publishedon в where.
Что не так?
Заранее спасибо!
ViktorK
28 ноября 2023, 22:42
modx.pro
410
0

Ошибка 500 при авторизиции

На сайте стоит Office. У некоторых пользователей при авторизации выдает ошибку 500 prnt.sc/Ytfu2Hex1aIw
Причем в админке сам вход регестриует — prnt.sc/-tApr4PGqskx
Но зайти на профиль и сайт не дает. Причем это не у всех, только у некоторых пользователей. Чем-то выделить их не могу, у них все стандартно, ошибок в логах нет. Ничего не понимаю.
ViktorK
29 ноября 2022, 18:23
modx.pro
402
0

Изменения в заказе после удаления товара из данного заказа

У меня сейчас если удалить товар/ры которые присутствует в заказе, потом этот заказ невозможно изменить и сохранить. Это нормально? Или это я в плагинах что-то нагородил? Сайт старый, уже сам не помню что там делалось. Поэтому пока хотел узнать если это так должно работать из коробки.
Заранее спасибо
ViktorK
27 августа 2020, 15:46
modx.pro
419
0

Выгрузка в контакт

Добрый день!
Еще вчера видел компонент для выгрузки товаров в магазин в контакте. А сейчас не могу его найти, кто-то знает что с ним случилось?
ViktorK
05 мая 2018, 04:34
modx.pro
666
0

Обновление корзины после завершения скидок

Пользуюсь msDiscount для проведения акций и скидок. Вопрос: как можно обновить цены во всех корзинах юзеров после завершения акции? А то акция закончилась еще вчера, а сегодня получили заказ с ценами по акции. Заранее спасибо!
ViktorK
05 января 2018, 15:23
modx.pro
730
0

Изменения уже существующего заказа

Подскажите, как отследить изменение уже существующего заказа? Не понимаю какое тут событие вызывается. Мне что нужно: После оформления заказа менеджер может удалить или добавить товары в заказ. Нужно уведомлять по почте покупателя об изменении состава заказа. Заранее спасибо!
ViktorK
27 декабря 2017, 14:46
modx.pro
1 091
0

Обновление заказа и письмо клиенту

Как сделать, чтобы после внесения изменений в заказ и одновременной смены статуса, письмо клиенту уходило с обновлением? Например, статус «новый». Открыл заказ, в поле комментарий написал текст, изменил статус на «отправлен», сохранил. В письме нет комментария. В шаблоне письма передаю его так: {$order.comment}. Приходится вначале сохранять комментарий и потом менять статус и сохранять. В таком случае работает. Заранее спасибо.
ViktorK
27 декабря 2017, 12:39
modx.pro
800
0

Разные категории, разные параметры, разные цены

У меня магазин где продаются товары с разными значениями параметра количество. Т.е например есть весовые товары, где есть параметр «Вес» с возможными значениями 50 гр — 100 гр – 200 гр- 500 гр – 1 кг.
Есть штучные, у которых параметр «Количество» со значениями 10 листов – 20 листов – 30 листов – 50 листов – 100 листов. И т.д. У товара могут быть разные значения, у каждого значения своя цена. В общем 2 вопроса:
1. Возможно ли реализовать у разных категорий товара разные поля? Т.е у весовых будет поле «вес» со своими значениями, у штучных поле «Количество» и т.д
2. И как в моем случае связать цены и разные значения веса или количества. У msOptionsPrice можно указать только одно поле для связи. В msOptionsPrice2 это возможно?

Надеюсь понятно описал проблему. Заранее спасибо за помощь!
ViktorK
18 мая 2016, 13:45
modx.pro
1 027
0