Всего 123 756 комментариев

Артур Шевченко
29 июня 2024, 11:29
+1
ваше решение можно использовать параллельно
Можно

С опциями товаров будет работать?
Это настолько само собой разумеется, что я не стал писать.

Мне не хватает силы своего воображения, чтобы представить это.
А зачем это воображать? Установите компонент на тестовом сайте на modhost и посмотрите.

А можно простецкий пример на fenom?
Читайте документацию
Егор
28 июня 2024, 09:42
0
спасибо за ответ. На счет «гугления» — я пытаюсь делать на zoomx. Некоторые вещи не смог победить с ним, вроде vendor.name в чанке. Все время выводит единицу. Как только не пробовал. Да и тот же mSearch2, не получилось у меня вывести количество результатов. Гуглил, использовал и total, и totalvar…

Я предполагаю, что если бы многие были чуточку «добрее», не составило бы труда сделать примеры или дать больше информации. Кроме того, зачем я, или кто-нибудь еще будет писать в поддержку автору материала, когда перед глазами будут готовые примеры хотя бы на fenom. Но видимо, им нравится постоянно отвечать, вместо того, чтобы сделать подробную документацию один раз :)
Здоров Александр
28 июня 2024, 09:41
+1
я извиняюсь, не глянул что ветка про другой компонент совсем, весь ответ про стандартный mfilter

не нашел как скрыть/убрать комментарий — и время редактирования тоже истекло(
Здоров Александр
28 июня 2024, 09:29
+1
1. да, использовать для фильтрации и для поиска возможно, будет работать через параметр &parents
2. да, фильтровать по опциям можно — параметр filters, вот пример парочки фильтров
&filters=`ms|price:number,msoption|razmer,tv|fil_top_row
по остальному — смотрите статьи в интернете, одно из лучших умений начинающего программиста — гугление
Егор
28 июня 2024, 04:23
0
а подскажите, пожалуйста, если установлен mSearch2 (для поиска) ваше решение можно использовать параллельно, только для фильтрации? И еще, не нашел в документации слов про «опции». С опциями товаров будет работать? Или у вас все на TV сделано? Так же, если можно, добавьте пожалуйста несколько скриншотов из настройки компонента в документацию:

нажав жёлтую (или оранжевую или вторую слева в колонке Действия)
Мне не хватает силы своего воображения, чтобы представить это. Растерялся :_(

Теперь добавим блок для показа метаинформации: количество результатов, выбранные фильтры, время фильтрации.
А можно простецкий пример на fenom? Сэкономит время.
Кровельный
27 июня 2024, 18:41
0
Вы можете не использовать MinifyX для некоторых компонентов, например ms2. Для этого надо унаследовать класс miniShop2 вместе с методом initialize(), и там где вызывается regClientScript() указать скрипт статично, далее обвернуть его каким-нибудь условием, например для определённых страниц или шаблонов, чтобы не боятся за то, что при обновлении что-то затрётся.

// Пример версионности статичного файла.
public function initialize($ctx = 'web', $scriptProperties = array())
{
    ...
        // Register JS
        $js = trim($this->modx->getOption('ms2_frontend_js'));
        if (!empty($js) && preg_match('/\.js/i', $js)) {
            $jsFile = 'assets/components/minishop2/js/web/minishop.js';
            $jsFileSize = filesize($_SERVER['DOCUMENT_ROOT'].'/'.$jsFile);
            $this->modx->regClientScript($jsFile.'?v='.$jsFileSize);
            ...
        }
    ...
}
miniShop2Config, а также можно обвернуть в условие. Или как в примере выше добавить конфиги.

По поводу
и продолжает сохранять файлы в /assets/minifyx/ хотя указано /assets/cache/
Тут лучше дождаться ответа разработчика, так как путь assets/components/minifyx/cache обычно идёт по умолчанию, возможно погрешность с вашей стороны или установлен кэш. Логируйте ошибки в журнал и смотрите, что там не так. Да, и ещё указывать из /assets/cache/ нельзя, так как это временная папка, которая очищается.
Максим
27 июня 2024, 12:28
0
Проверьте существует ли эта папка (/assets/cache/).
Проверьте путь на опечатки.
Проверьте права на запись у этой папки (может ли пользователь, из-под которого запускается php, записывать в неё).
Ivan K.
27 июня 2024, 09:13
0
<?php

switch ($modx->event->name) {
    case 'msOnAddToCart':
        // Проверка на контекст
        if ($modx->context->key !== 'web') {
            // Получаем текущие товары в корзине
            $tmp = $cart->get();

            // Получаем id добавленного продукта
            foreach ($tmp as $key => $item) {
                $productId = $item['id'];
                $product = $modx->getObject('msProduct', $productId);
                if ($product) {
                    // Получаем цену для монобренда "my_price_mono"
                    $newPrice = $product->get('my_price_mono');

                    // Проверяем, что цена задана и больше нуля
                    if (!empty($newPrice) && $newPrice > 0) {
                    // Устанавливаем новую цену
                        $tmp[$key]['price'] = $newPrice;
                    } else {
                        // Логгирование ошибки для пустой или некорректной цены
                        $modx->log(modX::LOG_LEVEL_ERROR, 'Invalid or empty my_price_mono for product ID ' . $product->get('id'));
                    }
                }
            }

            // Сохраняем измененную корзину
            $cart->set($tmp);
        }
        break;
}
Ivan K.
27 июня 2024, 01:48
0
Видимо не дорос я до ваших компонентов))

Не работает у меня мой самописный плагин, который реагирует на событие msOnAddToCart и берет цену из другого поля, не price, в зависимости от контекста. С обычной корзиной, работает, кстати.
Володя
26 июня 2024, 14:53
0
Добрый.
Можно создать настройку ms2_payment_tinkoff_status_cancel и указать там несуществующий статус, но не 0. Должно сработать.
Вячеслав Варов
26 июня 2024, 14:38
0
Почему-то сниппет игнорирует указанные в настройках лиректориии и продолжает сохранять файлы в /assets/minifyx/ хотя указано /assets/cache/
Алексей
26 июня 2024, 10:39
0
Вобщем есть ли системная настройка у mpsTinkoff, которая отвечает за автоматическое включение статуса Заказ Отменён id 4?
Алексей
26 июня 2024, 10:14
0
Добрый день. Подскажите пожалуйста как это изменить, настройку не могу найти.

Заказу автоматически ставится «Статус Отменен ID 4» при неуспешной попытке оплаты на эквайринге на сайте тинкофф там где карту вводят.

(неуспешная попытка оплаты — это если не получилось картой оплатить, может при вводе смс-кода клиент ошибся или банковский антифрод не дал оплатить )

Как можно настроить…? Чтобы зря заказу статус отменён не ставился. Это ж и емайл клиенту приходит зря. И у меня на этот статус Отменён Id 4 привязано действие другого компонента Онлайн кассы, он чек возврата автоматически делает.

mspTinkoff 1.0.13-beta Установлено 2023-04-25, 3:38 pm
Год и 2 месяца поздно в тех )
Сергей Карпович
25 июня 2024, 20:33
0
Polylang не умеет переводить значения опций, а переводы названий фильтров можно сделать через управление словарями.
Значения опций на другом языке указывается в локализации, просто заполняются на нужном языке
Скрин: disk.yandex.ru/d/rzQVfNHcuQmSAg
Артур Шевченко
25 июня 2024, 20:08
0
phpthumbon просто сниппет, который генерирует превью и сохраняет на сервере. Если тебе нужно хранить сгенерированные превью на другом сервере, то нужно использовать источники файлов. Modx поддерживает хранилище Amazon S3 из коробки.
Артур Шевченко
25 июня 2024, 19:09
0
Я не использую minishop, фильтр нужен только для статей-ресурсов, фильтрация нужна будет по ТВ полям которые polylang кажется переводит.
В любом случае, если это текстовые значения индексировать их плохая идея, так как по факту значение одно, просто на разных языках. Я бы заменил ключом, а переводы добавил в словари.
Konstantin
25 июня 2024, 18:29
0
Я не использую minishop, фильтр нужен только для статей-ресурсов, фильтрация нужна будет по ТВ полям которые polylang кажется переводит. И да — создаваться ресурсы будут через админку стандартным путем. Спасибо за ответ!
Артур Шевченко
25 июня 2024, 17:25
0
Совместим ли он с Polylang?
Polylang не умеет переводить значения опций, а переводы названий фильтров можно сделать через управление словарями.

Нужно ли делать индексацию каждый раз при создании нового ресурса?
Если ресурс создаётся через админку или стандартный процессор — нет не нужно.