Финансовая поддержка VPS, бесплатные дополнения и docs Донаты оплачивают сервер и двигают бесплатные дополнения MODX и документацию. Поддержать

Всего 126 112 комментариев

Артур Шевченко
Артур Шевченко
1. Написать свой класс оплаты, который сгенерирует ссылку на нужный ресурс.
2. Написать свой класс-обработчик заказа, который унаследует все методы стандартного и переопределит метод submit().
3. В JS проверять наличие в get-параметрах ключа msorder и делать редирект из JS.
4. Подумать над задачей ещё и раз и прийти к выводу, что данные любого ресурса можно вывести на любой странице, если известен ID ресурса.
Володя
Володя
Так ребята — «не бузите» !)
По порядку поясняю:
— Новая версия пакета для PHP 8 разработана, потому что SDK Юманей поддерживает только PHP 8. И только новая версия SDK поддерживает новые методы оплаты. Что были необходимы клиенту.
— В репозитории модсторе новую версию был вынужден отключить, так как покупатели пакета жаловались что им недоступна старая версия под PHP < 8.
— Пакет под MODX2 и на PHP8 все работает.

PS. Кому необходимы новые методы оплаты и у кого сайт работает на PHP8 пишите в ТП — временно активирую пакет для скачивания. Пока только так.
Александр
Александр
Пока новая версия так и не появилась на маркетплейте, или в каком она репозитории?
А как вообще в miniShop2 с поддержкой PHP 8? Попробовал поставить — сразу сотни предупреждений посыпались в лог, даже от простой перезагрузки лога.
Aleksandr Huz
Aleksandr Huz
Сниппет pbResources — это аналог pdoResources, но с возможностью присоединять таблицы по принципу «один ко многим», чего нет у pdoResources. Также переменные, добавленные через PageBlocks, добавляются к результату и выводятся как стандартные переменные ресурса.

Если это делать через pdoResources:
{'!pdoResources' | snippet: [
    'parents' => 0,
    'resources' => '1,2,3',
    'tpl' => 'seo-card'
]}
Чанк seo-card
<div class="col-4 mb-4">
    <div class="card">
        {*изображение храниться в виде json*}
        {set $image = $values.seo_img|fromJSON}
        <img loading="lazy" src="{$image.url}" width="395" height="450" class="card-img-top" alt="{$image.title}">
        <div class="card-body">
            <h5 class="card-title">{$values.seo_title}</h5>
            <p class="card-text">{$values.seo_description}</p>
            {*Получаем данные из таблицы*}
            {set $list = 'pbCollections'|snippet: ['field_name' => 'seo_list', 'return' => 'json']|fromJSON}
            <ul class="text-start">
                {foreach $list as $item}
                    <li>{$item.title}</li>
                {/foreach}
            </ul>
        </div>
    </div>
</div>

А если через pbResources, то у нас уже будут доступны переменные seo_img, seo_title, seo_description и list (массив)