Вопросы

[msOnCreateOrder] Получение модификаций товаров при оформлении заказа MiniShop2

Добрый день!
На сайте присутствует магазин на minishop2 и товары с модификациями, реализованными через msoptionsprice2.
Как при оформлении заказа в плагине на событие msOnCreateOrder получить данные о конкретной модификации заказанного товара?
Giant Dad
10 апреля 2024, 15:48
modx.pro
113
0

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

Приветствую!
Есть баннер типа «случайная публикация» — pdoResources отдает рандомный id и выводит чанк c названием, тв и прочими свойствами страницы. Хочу сделать, чтоб при клике на соседнюю с баннером кнопку/ссылку/иконку, менялось содержание баннера, то есть снова выбирался рандомный id и попадал в чанк, а сам баннер менялся без перезагрузки страницы.
Ну и таких баннеров на странице штук 10, со своими родителями и списком ресурсов для выборки.

Увы кодить не умею, и как допиливать AjaxSnippet не понимаю — надо не просто по клику один раз подгрузить баннер, а иметь возможность сколько угодно раз его перезагружать в том же месте, куда он отрисовался при загрузке страницы. Форум вроде облазил, рабочих совпадений к задаче не нашел, все вокруг да около. Буду благодарен за решение или наводку.
Алексей Яковлев
10 апреля 2024, 13:29
modx.pro
81
0

Добавление поля в базе для объекта msProduct

Доброе утро! Подскажите, может кто-то сталкивался, хотел бы добавить свое поле в базу данных для объекта msProduct (компоненты не совсем подходят, тк они выведут свойство в админку), пробовал через БД добавлять, но понятное дело modx данное поле не видит
Андрей
10 апреля 2024, 08:08
modx.pro
114
0

Фильтрация в msProducts по пользовательским опциям

Сейчас вывод такой:
{$_modx->runSnippet('!msProducts', [
    'parents' => $gparent,
    'tpl' => 'tpl.Category.Product',
    'includeThumbs' => 'jpg500',
    'limit' => 0,
    'sortby' => 'pagetitle',
    'sortdir' => 'ASC',
    'where' => [
        'Data.price:>' => $min_price,
        'Data.price:<' => $max_price
    ],
])}
Нужно бы еще фильтровать по пользовательским опциям, типа «похожие товары».
Вроде как, для этого есть optionFilters, но что-то никак не пойму какой там синтаксис.
Кто знает, подскажите, пожалуйста.
Evgeny Epifanov
09 апреля 2024, 22:10
modx.pro
109
0

В админке не отображаются превьюшки-картинки в MINGX

Проблема в том, что в админке не отображаются превьюшки. На сайте всё работает, картинки куда надо встают. Но в админке приходится вслепую ковыряться, что неудобно…



[{"caption":"Блок с картинками", "fields":[
{"field":"prodImg","caption":"Изображение","inputTVtype":"image"},
{"field":"prodName","caption":"Название"}
]}]

[
{"header":"Изображение", dataIndex:"prodImg", "renderer":"this.renderImage"},
{"header":"Имя CSS класса", dataIndex:"prodName"},
]

Подскажите, что можно сделать, чтобы заставить MINGX показывать картинки в админке?
serdeles
08 апреля 2024, 20:25
modx.pro
83
0

Конфликт ссылок с cultureKey контекстов

Здравствуйте! Проблема состоит в том, что если псевдоним на любом из контекстов начинается на de, например development-of-documentation, то меня перекидывает на страницу 404 немецкого контекста. Я понимаю, что проблема в ключе de, но как я могу это исправить. Вот код, который определяет контекст:
<?php
if($modx->context->get('key') != "mgr"){
	switch ($_REQUEST['cultureKey']) {
		case 'ru':
			$modx->switchContext('ru');
			break;
		case 'it':
			$modx->switchContext('it');
			break;
		case 'fr':
			$modx->switchContext('fr');
			break;
		case 'de':
			$modx->switchContext('de');
			break;
		case 'es':
			$modx->switchContext('es');
			break;
		case 'uk':
			$modx->switchContext('web');
			break;
		case 'ua':
			$modx->switchContext('web');
			break;
		default:
			$modx->switchContext('en');
			break;
	}
	unset($_GET['cultureKey']);
}
Vladyslav
08 апреля 2024, 19:13
modx.pro
72
0

Вопрос про wayfinder на revo - вывод sidemenu с раскрывающимися подменю

Доброго дня!
Взял за образец сайдменю — www.codeply.com/p/WGCqYEiPBg
хочу сделать чтобы разворачивались подпункты меню по типу аккордеон. Пытаюсь сделать на wayfinder.
Вызов в шаблоне:
[[Wayfinder?
&startId=`0`
&level=`2`
&outerTpl=`Wayfinder.Sidebar.outerTpl`
&innerTpl=`Wayfinder.Sidebar.innerTpl`
 &innerRowTpl=`Wayfinder.Sidebar.innerRowTpl`
&rowTpl=`Wayfinder.Sidebar.rowTpl`
&parentRowTpl=`Wayfinder.Sidebar.parentRowTpl`
]]
Wayfinder.Sidebar.parentRowTpl:
<!-- parentRowTpl-->
<li class="[[+wf.classnames]]">
    <a class="nav-link px-0 align-middle" href="#submenu1" data-bs-toggle="collapse" title="[[+wf.title]]">
        <span class="ms-1 d-none d-sm-inline">[[+wf.linktext]]</span>
    </a>
    [[+wf.wrapper]]
</li><!-- /parentRowTpl -->
— здесь в href="#submenu1" должно быть # с ссылкой на id ul вложенного элемента
Wayfinder.Sidebar.innerTpl:
<!-- innerTpl -->
<ul id="submenu1" class="collapse nav flex-column ms-1" data-bs-parent="#menu">
    [[+wf.wrapper]]
</ul><!-- /innerTpl -->
-здесь надо чтобы id ul совпадало с href вышестоящей ссылки, чтобы ul раскрывался при нажатии на соответствующую ссылку.
Прошу подсказать как это можно реализовать?
VAS
VAS
07 апреля 2024, 21:17
modx.pro
72
0

msoptionsprice2 - модификация в зависимости от диапазона значений опции

Добрый день.
Имеем мебельный интернет-магазин. И допустим в шкафах цена меняется в зависимости от размера. пусть будет ширина.
Какие то базовые размеры мы задали, к пример 800, 900, 1000 мм и к ним сделали модификации.
А теперь встала задача седелать так чтобы пользователь мог в окошке вбивать свой размер клавишами, например 857 мм. и в зависимости от этого ему считалась цена, но она не должна быть меньше чем цена за 800 и не больше чем цена за 900.
Как сделать чтобы можно было указывать диапазон размера для наценки, к примеру, 800-900мм: +500 руб.
Андрей
07 апреля 2024, 15:10
modx.pro
119
0

Вывод дочерних документов (pdoResources)

Есть страница, на которую при помощи pdoResources + TV должны выводиться изображения. Каждое изображение — это отдельный дочерний документ страницы.

В принципе, тут сложного ничего нет:
serdeles
05 апреля 2024, 01:13
modx.pro
124
0

Как получить дедушку в @SELECT запросе в TV поле?

Есть TV тип «Список одиночный выбор» в поле Возможные значения пишу так, все ок кроме parent, не могу в него получить дедушку ресурса, родителя можно так parent=[[+parent]] а вот дедушку никак, написал снипет grandparent возвращает id дедвушки, но не работает он тут @SNIPPET grandparent

@SELECT pagetitle, id FROM modx_site_content WHERE template = 4 AND parent=@SNIPPET grandparent
Подскажите пожалуйста как получать дедушку в таком запросе?
Роман
03 апреля 2024, 17:28
modx.pro
150
0