Декодировать minishop2 массив $products

Задавал вопрос на этом форуме как передать массив products, который создаётся из товаров полученных плагином minishop2 при создании заказа. На данный момент сайт работает так.
Менеджер меняет статус заказа в minishop2 на «Завершен»


Чанк письма вызывает сниппет, в который передает некоторые переменные и массив products, которые созданы плагином minishop2



Код сниппета toJson:
<?php
    return json_encode($input,JSON_UNESCAPED_UNICODE );
В чем вся проблема. У меня не получается декодировать массив products по итогу, я пробовал делать это и с помощью внешних сниппетов, и с помощью функции в коде json_decode();
Ответьте пожалуйста как можно декодировать данный массив в сниппете, вызываемом из чанка письма.
Заранее спасибо!
Matvey
18 ноября 2022, 12:08
modx.pro
329
0

msync на modx для интеграции с 1С. УТ 8.3

Доброго дня!
Настроили msync на modx для интеграции с 1С. УТ 8.3
При выгрузке не все количество товаров садится на сайт.
Могли бы подсказать как разобраться где проблема, у нас или в 1с?
agata
17 ноября 2022, 07:39
modx.pro
529
0

Вывод фотографии выбранной модификации продукта msOptionsPrice2 в миникорзине msMiniCartDynamic

Всем привет. Я начинающий web-разработчик, поэтому описанное мною решение кому-то покажется топорным, однако в силу того, что другого решения на просторах интернета я не нашел, то опубликую свое.

Верстаю магазин на ModX Revo 2.8.4-pl, MiniShop2 и сопутствующих компанентах.
Реализовал мини корзину на msMiniCartDynamic, а цвета товара с галереей для каждого цвета вывожу через msOptionsPrice2, дефолтно все работает здорово.

Но по ТЗ каждый товар должен иметь разные цвета и свою галерею к каждому цвету, соответственно при выборе цвета галерея товара должна как минимум перелистываться на превьюшную картинку выбранной модификации (цвета), а как максимум, должны выводиться фото только выбранной модификации (это, к сожалению, у меня реализовать пока так и не получилось).

Все остальное я реализовал, в корзине выводится фото выбранной модификации, красота… но вот что делать с миникорзиной? msMiniCartDynamic2 нынче не доступен, соболезную родным автора, да и не знаю, возможно ли во второй части выводить именно фото модификации «из коробки» (без дополнительных танцев с бубном).
Обшерстил все форумы, но даже намека на решение проблемы не нашел. Пришлось решать своими силами. Бонусом вывел в мини корзину и цвет с размером в нормальном виде.
Илья
16 ноября 2022, 23:38
modx.pro
1
1 117
+2

msoptionsprice2 + mfilter2 вывод текущей модификации товара в каталоге

Здравствуйте!

Подскажите, пожалуйста, возможен ли вывод информации о модификации товара (цена и св-ва), выбранной в фильтре?
Т.е. есть фильтр в каталоге

{'!mFilter2' | snippet : [
    'class' => 'msProduct',
    'parents' => $_modx->resource.id,
    'element' => 'msProducts',
    'limit' => 0,
    'filters' => '
        msoption|size,
    ',
    'aliases' => '
        msoption|size==size,
        ms|price==price,
    ',
    'tpl' => '@FILE chunks/catalog/product_list.html',
    'sortby' => '{"menuindex":"asc"}',
    'suggestions' => 1,
    'showLog' => 0,

....
ну и далее шаблоны и т.п.

Сейчас в чанке товара вывожу первую модификацию так:
[[!msOptionsPrice.modification?
    	&product=`[[+id]]`
    	&limit=`1`
    	&tpl=`product_list_modificationTpl`]]

А вот нужно бы именно ту, которую фильтр отработал. Есть возможность?
P.S. Пожалуйста, не пишите ответы навроде «нужно код писать», «обращайтесь к разработчикам» и т.п. Благодарю за понимание.
newbmod
16 ноября 2022, 18:58
modx.pro
1 004
-2

Выходит ошибка 404 при переходе в товар по клику, как исправить? minishop2

Если в категории навести на товар то покажет ссылку
https://site.com/manager/index.php?a=resource/update&id=558
и при клике у меня получается такая ссылка
https://site.com/manager/.php?a=resource/update&id=558
И так на абсолютно всех товарах, однако если нажать правой кнопкой мыши и нажать на изменить он переходит и там ссылка без Index.php, получается проблема в генерации ссылки.
Пакет ауторедиректор удалён, в
htaccess
были дефолтные редиректы с
index.php
я даже убрал, то есть они работают на всех других сайтах без проблем.

Как убрать генерацию ссылок товаров через
index.php
?
Vladimir
16 ноября 2022, 14:19
modx.pro
620
0

Проблема с доступом через форму Office после добавление плагина на авто письмо после покупки

Подскажите почему конфликт с доступом.
Поставил Office и Hybridauth, все настроил, проблем нет, протестировал пользователь регистрируется, приходит письмо, вход в ЛК есть. Но есть решение на сайте Ильи Уткина, когда пользователь без регистрации делает покупки и ему приходит письмо кроме заказа также письмо о сгенерированном пароле и регистрации. Решил совместить эти два решения, пусть желающий сделать ЛК перед покупкой пройдет регу (тем более там только мыло нужно указать), но для тех кто сделает покупку без ЛК отправить письмо о логине и пароле и ссылку на вход в ЛК. Но при таком совместном использование плагина и Office, пользователь без предварительного создания ЛК при входе с почты получает ошибку 404. Подскажите может в настройках Office что-то надо еще подправить.
Плагин на письмо покупки без регистрации такой, поставлен на событие msOnChangeOrderStatus.
<?php
if ($modx->event->name == 'msOnChangeOrderStatus') {
	// Если статус заказа << Новый >>
        if ($status == 1) {
            $userId = $order->user_id;
            $objUser = $modx->getObject('modUser', $userId);
            $objProfile = $modx->getObject('modUserProfile', $userId);
            $time = time();
            $newUser = 10; // Сколько секунд пользователь считается новым
            
            if ($objUser && $objProfile) {
                $username = $objUser->get('username');
                $email = $objProfile->get('email');
                $createdon = strtotime($objUser->get('createdon')) + $newUser;
                $modx = new modX();
                $modx->initialize('mgr');
                $modx->getService('error','error.modError');
                
                if ($createdon > $time) {
                    $data = array(
                        'id' => $userId,
                        'username' => $username,
                        'email' => $email,
                        'newpassword' => 'passwordgenmethod', // любой набор символов
                        'passwordgenmethod' => 'g', // отдаём генерацию пароля MODX
                        'passwordnotifymethod'  => 'e', // письмо пользователю
                    );
                    
                    $response = $modx->runProcessor('/security/user/update', $data);
                    if ($response->isError()) {
                         $modx->log(modX::LOG_LEVEL_ERROR, 'Update error. Username: '.$username.', Message: '.$response->getMessage());
                    }
                }
            }
        }
}
Виталий
16 ноября 2022, 12:46
modx.pro
349
0

minishop2 раскрытие списка докуменов

Здравствуйте, кнопка для раскрытия вложенных документов показывается для всех, даже у кого нет вложенных документов, подскажите как это поправить? или как вариант добавлять отдельную иконку для категорий у которых есть вложенные документы
Руслан
16 ноября 2022, 12:37
modx.pro
324
0

Написать скрипт простенькой голосовалки за варианты ответов

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

Нужно написать простенькую голосовалку за варианты ответов. Знаю, что есть готовые, но что-то они мне все не нравятся.

ТЗ краткое

  1. Есть два доп. поля в ресурсе — заголовок и варианты ответов.
  2. При сохранении ресурса данные вносятся в таблицу БД.
  3. При выводе на фронте показываются ответы.
  4. При нажатии на вариант ответа данные вносятся в БД.

Более полное ТЗ смотрите тут.

В ответе укажите, пожалуйста, цену, сроки, свое предложение. Сроки… хм… да хоть две недели пишите, сроки не критичны.
weranda
16 ноября 2022, 12:06
modx.pro
352
-1

Возможно ли в модкс автоматически в админке считать стоимость

Вопрос такой, возможно ли считать стоимость товара указывая два параметра, стран цена и скидка на товар, поле цена должно заполняться автоматически по формуле Старая цена — скидка в процентах
Вячеслав Варов
16 ноября 2022, 08:32
modx.pro
499
0

Как делать Ajax запросы с фронта к сниппету?

Приветствую.
Подскажите, пожалуйста, варианты того, как можно делать запросы с фронта к сниппетам.
weranda
16 ноября 2022, 08:20
modx.pro
634
-1