Условие в сниппете вывода опций - не выводить удаленные опции
Еще раз всех приветствую, у товаров была текстовая опция со значением «по запросу», но опция была удалена, а цена была прописана в стандартную опцию минишопа price. Однако в фиде yml значение этой опции сохранилось, а за вывод опций отвечает данный сниппет, возможно ли добавить в него условие, что бы он не выводил удаленную опцию?
Скриншот: disk.yandex.ru/i/5g6y_-gg9qXBMA
Скриншот: disk.yandex.ru/i/5g6y_-gg9qXBMA
<?php
if(empty($tpl) || !$modx->getChunk($tpl)){
return false;
}
$sQuery = "SELECT
po.value as value,
o.caption as name
FROM
". $modx->getOption('table_prefix') ."ms2_product_options po
LEFT JOIN
". $modx->getOption('table_prefix') ."ms2_options o ON (po.key = o.key)
WHERE
po.product_id = '".$res_id."'";
$result = $modx->query($sQuery);
$res = $result->fetchAll(PDO::FETCH_ASSOC);
$output = "";
foreach($res as $v){
$output .= $modx->getChunk($tpl,$v);
}
echo $output;
Теги taglister tolinks
Всем добрый!
Через taglister tolinks на странице выводятся теги. Ссылка с них идёт на оду страницу с GET запросом tag = выбранному тегу.
Еще есть специальный раздел, с ресурсами для некоторых тегов.
Сейчас в чанке вывода тегов сделано руками core/components/taglister/elements/chunks/link.chunk.tpl
Как сделать так, чтобы в этом чанке автоматически проверялось, если ли в ресурсе ID 197 есть дочерние ресурсы с pagetitle = тегу, то подставлять ссылку на эти страницы, если нет, то на [[+url]].
Через taglister tolinks на странице выводятся теги. Ссылка с них идёт на оду страницу с GET запросом tag = выбранному тегу.
Еще есть специальный раздел, с ресурсами для некоторых тегов.
Сейчас в чанке вывода тегов сделано руками core/components/taglister/elements/chunks/link.chunk.tpl
{if $item == 'bios'}
<a href="{199|url}" class="[[+cls]]">[[+item]]</a>
{/if}
{if $item == 'amd'}
<a href="{198|url}" class="[[+cls]]">[[+item]]</a>
{/if}
{if $item == 'gpu'}
<a href="{200|url}" class="[[+cls]]">[[+item]]</a>
{/if}
{if $item != 'amd' AND $item != 'bios' AND $item != 'gpu'}
<a href="[[+url]]" class="[[+cls]]">[[+item]]</a>
{/if}
ВОПРОС:Как сделать так, чтобы в этом чанке автоматически проверялось, если ли в ресурсе ID 197 есть дочерние ресурсы с pagetitle = тегу, то подставлять ссылку на эти страницы, если нет, то на [[+url]].
Как вывести связанные товары независимо от типа связи?
Добрый день.
Ранее в каталоге были товары, у которых была добавлена связь один к одному (id=4).
Я выводил их следующим кодом:
Перечисление айдишников в коде выше не работает. Как указать вызов сниппета, чтобы связанные товары выводились независимо от того, какая связь добавлена у товара?
Ранее в каталоге были товары, у которых была добавлена связь один к одному (id=4).
Я выводил их следующим кодом:
{var $links = '!msProducts' | snippet : [
'parents' => 0,
'link' => 4,
'master' => $_modx->resource.id,
'tpl' => '@INLINE <div class="col-6 col-md-4 col-lg-3">{include "file:new/chunks/product.tpl"}</div>'
]}
{if $links?}
<h3>Купите также:</h3>
{$links}
{/if}
Сейчас же появилась необходимость сделать, у некоторых товаров связь один ко многим (id=5).Перечисление айдишников в коде выше не работает. Как указать вызов сниппета, чтобы связанные товары выводились независимо от того, какая связь добавлена у товара?
Вывод блока "С этими товарами покупают" на странице каталога
Всех приветствую, столкнулся с задачей на странице каталога с сантехническими трубами выводить крепежи, фитинги, применяемые при их монтаже. Но разобрался как сделать это лишь на странице карточки товара. Есть ли возможность вывести список в каталоге. Это не только удобство, но и позволит расширить семантику и Lsi на посадочной странице.
Как повторно отправить письмо для подтверждения регистрации? [Решено]
Использую пакет «Login».
Как можно повторно инициировать отправку письма для подтверждения регистрации?
В случаях если пользователь удалил письмо или просто отправить напоминание с соответствующей ссылкой.
Как можно повторно инициировать отправку письма для подтверждения регистрации?
В случаях если пользователь удалил письмо или просто отправить напоминание с соответствующей ссылкой.
Как вывести вложенный migx через fenom?
Есть migx внутри него ещё, как вывести вложенный migx через fenom? как получить этот плейсхолдер
Пытался так
phones
допустимПытался так
{set $phonesRaw = 'phones' | placeholder}
{set $phones = $phonesRaw | fromJSON}
{foreach $phones as $phone}
<a href="tel:{$phone.title | preg_replace:'/[^0-9\+]|/': ''}">
<span>{$phone.title} {if $phone.title1}—{/if} </span>
{if $phone.title1}<strong>{$phone.title1}</strong>{/if}
</a>
{/foreach}
Запускаю так{'getImageList' | snippet : [
'docid' => $_modx->resource.id,
'limit' => '4',
'tvname' => 'contacts',
'tpl' => 'contactTpl',
]}
Можно ли в msDiscount настроить определенный процент скидки на второй аналогичный товар в корзине
Добрый день!
Подскажите, пожалуйста, можно ли в msDiscount настроить определенный процент скидки на второй аналогичный товар в корзине.
Например, на 2 -ю аналогичную позицию в корзине требуется применить скидку 30%.
Товар стоит 1000 руб.
Добавили в корзину 1 товар, цена товара = 1000 руб.
Добавили в корзину 2-ой такой же товар товар, цена товара изменилась, применилась скидка к каждой позиции 15%, цена стала = 850 руб.
Добавили в корзину 3 товар, цена товара изменилась на 900 руб., так как 3-й товар мы должны подать без скидки.
И.т.д.
т.е. скидку считать на вторую позицию, если кол-во кратно двум.
Или может быть в msDiscount как-то по другому можно алгоритм настроить?
Заранее спасибо за ответ!
Подскажите, пожалуйста, можно ли в msDiscount настроить определенный процент скидки на второй аналогичный товар в корзине.
Например, на 2 -ю аналогичную позицию в корзине требуется применить скидку 30%.
Товар стоит 1000 руб.
Добавили в корзину 1 товар, цена товара = 1000 руб.
Добавили в корзину 2-ой такой же товар товар, цена товара изменилась, применилась скидка к каждой позиции 15%, цена стала = 850 руб.
Добавили в корзину 3 товар, цена товара изменилась на 900 руб., так как 3-й товар мы должны подать без скидки.
И.т.д.
т.е. скидку считать на вторую позицию, если кол-во кратно двум.
Или может быть в msDiscount как-то по другому можно алгоритм настроить?
Заранее спасибо за ответ!
Авторизация на сайте по ссылке на email
Добрый день!
Подскажите пожалуйста, возможно ли через дополнение Office реализовать вход в личный кабинет через email таким образом:
1) клиент вводит email
2) на email приходит ссылка для регистрации/авторизации
3) переходим по ссылке — залогинились/зарегистрировались
Получается минуем ввод пароля, заменяя его ссылкой на почту.
Пример функционала уже реализованного на MODX3:
docs.modx.com/3.x/ru/building-sites/client-proofing/security/passwordless-login
Подскажите пожалуйста, возможно ли через дополнение Office реализовать вход в личный кабинет через email таким образом:
1) клиент вводит email
2) на email приходит ссылка для регистрации/авторизации
3) переходим по ссылке — залогинились/зарегистрировались
Получается минуем ввод пароля, заменяя его ссылкой на почту.
Пример функционала уже реализованного на MODX3:
docs.modx.com/3.x/ru/building-sites/client-proofing/security/passwordless-login
[msPromoCode] Автоматом оформляется заказ, если применить промокод
Добрый день.
Установлен Minishop2 v 3.0.2-pl.
В чанке «tpl.msOrder.custom» и «tpl.msCart.custom» по инструкции добавил [[!mspcForm]].
В корзине промокоды хорошо работают, можно добавить/удалить с помощью кнопки рядом "+-".
Но дальше, если перейти на страницу оформления заказа, ввести промокод и нажать кнопку "+" (если нужно применить промокод) или кнопку "-" (если нужно удалить его), то происходит автоматическое оформление заказа, даже если ничего не заполнено. И открывается страница «Спасибо за заказ» и т.п.
Как это исправить?
Чанк tpl.mspcForm, который выводит форму промокодов
Установлен Minishop2 v 3.0.2-pl.
В чанке «tpl.msOrder.custom» и «tpl.msCart.custom» по инструкции добавил [[!mspcForm]].
В корзине промокоды хорошо работают, можно добавить/удалить с помощью кнопки рядом "+-".
Но дальше, если перейти на страницу оформления заказа, ввести промокод и нажать кнопку "+" (если нужно применить промокод) или кнопку "-" (если нужно удалить его), то происходит автоматическое оформление заказа, даже если ничего не заполнено. И открывается страница «Спасибо за заказ» и т.п.
Как это исправить?
Чанк tpl.mspcForm, который выводит форму промокодов
<!--@formatter:off-->
<div class="row">
<div class="mspc_form">
<div class="col-7 col-xs-7">
<div>
<div class="input-group">
<span class="input-group-prepend input-group-addon">
<span class="input-group-text">[[%mspromocode_promocode]]</span>
</span>
<input type="text" class="mspc_field form-control [[+coupon:notempty=`[[+disfield]]`]]"
[[+coupon:notempty=`disabled`]]
value="[[+coupon]]" placeholder="[[%mspromocode_enter_promocode]]" />
<span class="input-group-append input-group-btn">
<button type="button" class="mspc_btn btn btn-default btn-secondary">[[+btn]]</button>
</span>
</div>
<div class="mspc_coupon_description" style="display: none;">[[+coupon_description]]</div>
</div>
<div class="mspc_msg"></div>
</div>
<div class="col-5 col-xs-5">
<div class="mspc_discount_amount" style="display:none; margin-top:7px;"><b>[[%mspromocode_discount_amount]]</b>: <span>[[+discount_amount]]</span> [[%ms2_frontend_currency]]</div>
</div>
</div>
</div>
Вызов Formit для множества адресов почты, каждый адрес для определенного контента
Добрый день.
Стоит задача отправлять пользователя с запросом на разную почту, разъясню:
Есть каталог в форме таблицы
Так как это все на одной странице контента, id ресурса один и как это изящно обыграть тямы не хватает :). Не хочется просто создавать отдельные ресурсы с отдельными формами отправки и в каталоге перенаправлять на эти формы уже запрос, хотелось бы в рамках одной формы сделать.
Стоит задача отправлять пользователя с запросом на разную почту, разъясню:
Есть каталог в форме таблицы
Наименование - деталировка -артикул-наличие-запросить цену
Возникает необходимость перенаправления по определенным позициям каталога запроса пользователя (запросить цену) на другую почту абсолютно на другом почтовом сервисе. Вызов Formit настроен на основную почту &emailTo=`1@site.ru`
, при добавление еще одного адресата в &emailTo=`1@site.ru,2@site.ru`
, я получаю письмо как и второй адресат, по аналогии добавив третьего адресата &emailTo=`1@site.ru,2@site.ru,3@site.ru`
мы все получим эти письма. Подскажите можно обыграть в Formit так, чтобы почта шла какому-либо одному адресату по этим отдельным позициям, т.е. данная вся отправка оставалась видна только почте 1@site.ru, а почты 2@site.ru и 3@site.ru видели только свои запросы.Так как это все на одной странице контента, id ресурса один и как это изящно обыграть тямы не хватает :). Не хочется просто создавать отдельные ресурсы с отдельными формами отправки и в каталоге перенаправлять на эти формы уже запрос, хотелось бы в рамках одной формы сделать.