Свое поле в заказе

3 1 000
Напишите свою стоимость и я буду согласовывать ее с заказчиком.
Требуется в корзине MS2 и в форме msOneClick добавить поле с типом number и min=«25» для изменения веса у каждого товара в корзине и в msOneClick.
Я попробовал добавить поле, но в письме и в заказе вес прописывается без изменений.
Смысл в том, что любой товар можно купить в любом количестве (товар весовой) и во время заказа в корзине покупатель пишет требуемый вес в килограммах. Далее менеджер связывается с ним и оговаривает стоимость.

Мне подсказали, что надо написать плагин, который будет передавать вес в заказ (этого я сам не могу сделать).
Нужна помощь.
Олег
01 июня 2024, 23:26
modx.pro
236
0

как менять вес в корзине?

Здравствуйте!
Заказчик просит в корзине дать возможность покупателю прописать требуемый вес для каждого товара.
Я попробовал сделать по аналогии с количеством, но в списке заказов и на почту приходит вес без изменений.
Подскажите, что нужно подправить, чтобы в заказ передавался вес из корзины?

<form method="post" class="ms2_form form-inline" role="form">
                                <input type="hidden" name="key" value="{$product.key}">
                                <div class="form-group">
                                    <input type="number" name="weight" value="{$product.weight}"  min="25"
                                           class="input-sm form-control"/>
                                    <span>кг</span>
                                    <button class="btn btn-default" type="submit" name="ms2_action" value="cart/change">
                                        <i class="fa fa-refresh"></i>
                                    </button>
                                </div>
                            </form>
В письме вывожу так:
<td style="{$style.th}">{$product.weight} кг</td>
Олег
01 июня 2024, 18:59
modx.pro
320
0

Доработка mSync

5
Все привет!

Необходимо доработать импорт товаров из 1с УТ 10.3 в minishop. Установлен mSync, импорт падает с ошибками.
Для разработки можем предоставить архив с файлами выгрузки, в дальнейшем доступ к серверу.
Подробнее с кандидатом.
Илья
31 мая 2024, 13:44
modx.pro
240
0

Задваиваются письма

При регистрации пользователя через LOGIN подключил сниппет '&postHooks=`email_reg_user`'
<?php
$email = $hook->getValue('email');
$username = $hook->getValue('username');
$password = $hook->getValue('password');
$fullname = $hook->getValue('fullname');
$phone = $hook->getValue('phone');

//отправляем админу
$message_admin = $modx->getChunk('adminEmailTemplate_reg',array(
   'email' => $email,
   'fullname' => $fullname,
   'username' => $username,
   'phone' => $phone
));
 
$modx->getService('mail', 'mail.modPHPMailer');
$modx->mail->set(modMail::MAIL_BODY,$message_admin);
$modx->mail->set(modMail::MAIL_FROM,'noreply@site.ru');
$modx->mail->set(modMail::MAIL_FROM_NAME,'Сайт');
$modx->mail->set(modMail::MAIL_SUBJECT,'регистрация участника');
$modx->mail->address('to', 'admin@site.ru');//$modx->getOption('emailsender'));
$modx->mail->setHTML(true);
$modx->mail->send();

//отправляем пользователю
$message = $modx->getChunk('myEmailTemplate_reg',array(
   'email' => $email,
   'fullname' => $fullname,
   'username' => $username,
   'password' => $password,
   'phone' => $phone
));
 
//$modx->getService('mail', 'mail.modPHPMailer');
$modx->mail->set(modMail::MAIL_BODY,$message);
$modx->mail->set(modMail::MAIL_FROM,'noreply@site.ru');
$modx->mail->set(modMail::MAIL_FROM_NAME,'Сайт');
$modx->mail->set(modMail::MAIL_SUBJECT,'регистрация');
$modx->mail->address('to', $email);
$modx->mail->setHTML(true);
$modx->mail->send();
проблема в том что на почту (администартора) admin@site.ru приходит два письма adminEmailTemplate_reg и myEmailTemplate_reg
Как сделать так чтобы второе не уходило админу
vit
vit
29 мая 2024, 18:52
modx.pro
1
991
0

Вывести теги товара на странице товара zoomx (smarty)

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

upd 29.05.2024:

Это простое решение как вывести теги товара на странице товара используя сниппет msOptions.
Просто выводит список тегов теги, которые можно оформить как нужно.

Вызов в шаблоне товара через сниппет (zoomx, smarty):

{'msOptions'|snippet:[
	  'options' => 'tags',
	  'tplRow' => '',
	  'tplOuter' => '',
	  'tplEmpty' => '',
	  'tpl' => '@FILE chunks/tpl.msProductOptionsTags.tpl'
  ]}

Код чанка:

{foreach $options as $tagsname => $tags}
    {foreach $tags as $tag}
        {$tag} 
    {/foreach}
{/foreach}

Загрузить в /core/elements/chunks (создать папки «elements» и «chunks» если нет. Если изменяли путь до ядра — заменить на свой).

{ $tag } Можно оформить как нужно:

<a href="/search?tag={$tag}" class="some-class">{$tag}</a>

т.е:

{foreach $options as $tagsname => $tags}
    <p>
    {foreach $tags as $tag}
        <a href="/search?tag={$tag}" class="some-class">{$tag}</a>
    {/foreach}
    </p>
{/foreach}
Егор
28 мая 2024, 11:44
modx.pro
509
0

where по одному полю для двух ресурсов

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

Хочу сделать связь ресурсов по одному полю.
Имею поле connection, в котором множественный выбор.
Это поле добавляется абсолютно ко всем ресурсам. И пытаюсь организовать связь ресурсов.

'where' => '{"connection":[[*connection]]}'
Т.е., если у ресурсов сделан одинаковый выбор, то есть возможность вывести ссылку друг на друга.
Но данная схема не работает:
'where' => '{"connection":[[*connection]]}'
Может так вообще делать нельзя.

Вот весь мой код вывода связи ресурсов:
{var $output = 'ms2GalleryResources' | snippet: [
    'tpl' => 'proekt-item-portfolio'
    'parents' => '394'
    'where' => '{"connection":"[[*connection]]","connection.value:!=":1 }'
    'limit' => '6'
    'includeThumbs' => 'medium'
    'includeTVList' => 'days, connection, video'
    'depth' => '0'
    'showLog' => '1'
]}
{if $output}
<h3 class="text-center">[[*connection]] в наличии</h3>
<div class="row flex-content-center">
{$output}
</div>
{/if}
Илья
27 мая 2024, 17:42
modx.pro
345
0

Ошибка: Fatal error: Allowed memory size of 104857600 bytes exhausted (tried to allocate 10917680 bytes)

Добрый день. Столкнулся с ошибкой Fatal error: Allowed memory size of 104857600 bytes exhausted (tried to allocate 10917680 bytes) на некоторых страницах сайта, а именно на главной странице и в части страниц раздела «О центре».
Баир
27 мая 2024, 13:20
modx.pro
343
0

Требуется сделать перелинковку на сайте

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

Требуется сделать перелинковку на сайте.
Простая перелинковка с выводом проекта из портфолио в проект товара и по этой же схеме — проект в разделе в наличии в проект товара и в раздел с товарами.

Все подробности можно обсудить в телеграмм.
Всё расскажу и объясню.
https://t.me/@ilya_gradov
Или в через личные сообщения.

По цене договоримся.
Илья
27 мая 2024, 13:18
modx.pro
192
0

Как вызвать getService $this->modx в наследуемом классе?

MODX Revolution 2.8.3-pl

Как вызвать getService $this->modx в наследуемом классе, чтобы воспользоваться функциями из другого компонента?

Например в обработчике корзины:
<?php
class msCartCustomHandler extends msCartHandler {
}
cronAbs
24 мая 2024, 18:02
modx.pro
1
295
0

MyFavorites

MyFavorites – компонент, который позволяет добавить на сайт списки избранного. Основной упор сделан на работу с анонимными пользователями, аналитикой и защитой от ботов.

Основные возможности компонента
  • Создание различных списков избранного.
  • Работа как с анонимными пользователями, так и только с зарегистрированными.
  • Пользовательские списки избранного (пользователь может сам создавать/переименовывать и удалять свои списки).
  • Очистка сессий сайта и удаление кук пользователем не влияют на список избранного у анонимных пользователей.
  • Идентификация анонимного пользователя и, как следствие, его списка избранного, посетившего сайт с разных браузеров (метод не срабатывает во всех 100% случаев. На сайте должна быть подключена Google Analytics или Яндекс.Метрика).
  • Привязка списка избранного анонимного пользователя к зарегистрированному пользователю при его авторизации или создании заказа на сайте.
  • Синхронизация избранного на разных устройствах/браузерах, если ранее не было определено, что они принадлежат одному и тому же пользователю.
  • Передача данных о событиях добавления/удаления и очистки списка избранного в Google Analytics и Яндекс.Метрика.
  • Черные списки IP.
  • Защита от CSRF-атаки.
  • Защита с помощью reCAPTCHA 3.
  • Лимит на запросы для анонимных и зарегистрированных пользователей.
  • Уведомление на Email о подозрительной активности пользователя.
  • Доступ в админке сайта к информации о пользователях, их списках избранного и активности.
  • Экспорт информации о пользователях и избранном в CSV, XLSX и ODS.
  • Корректная работа с Cloudflare.
  • Быстрая кастомизация стилей через CSS переменные.
  • Возможность подписываться на JS события компонента для кастомизации его работы.
  • Нативный JavaScript.
Prihod
24 мая 2024, 16:31
modx.pro
2
1 282
+11