Доработки в самописном расширении для MODX 2 (пишите свои цены за час, пожалуйста ?)
1 10 000
Коллеги, привет!
Нужен разраб, который умеет писать расширения, чтобы сделать доработки в самописной системе управления салонами.
Это расширение MODX 2й версии. Функционал в админке (ExtJS) и на фронте (mdbootstrap на jQuery). Есть кастомизированные ресурсы и пользователи. Темплейты статичные.
Нужен разраб, который умеет писать расширения, чтобы сделать доработки в самописной системе управления салонами.
Это расширение MODX 2й версии. Функционал в админке (ExtJS) и на фронте (mdbootstrap на jQuery). Есть кастомизированные ресурсы и пользователи. Темплейты статичные.
Синхронизация minishop2 + mFilter + 1C
14
Всем привет.
Задача: синхронизация miniShop+mFilter2 с 1С.
Со стороны modx все компоненты, как и сама система, актуальные.
1С облачная, очень много опций у товаров, возможно стоит рассмотреть другие реализации фильтрации.
Стоимость и сроки обсуждаются.
За подробностями в телегу @avbykovsky
Задача: синхронизация miniShop+mFilter2 с 1С.
Со стороны modx все компоненты, как и сама система, актуальные.
1С облачная, очень много опций у товаров, возможно стоит рассмотреть другие реализации фильтрации.
Стоимость и сроки обсуждаются.
За подробностями в телегу @avbykovsky
mfilter2 + remians: фильтрация размеров с учетом остатков
Здравствуйте!
minishop2 + msearch2 + msproductremains.
Фильтр используется по стандартному свойству «размер». Задача фильтровать — показывать только те товары, у которых есть в остатках нужный размер.
Пример из документации отфильтровывает товары, общее значение остатков совпадает с указанным в вызове количеством, без учета фильтруемого размера.
Как скорректировать запрос?
minishop2 + msearch2 + msproductremains.
Фильтр используется по стандартному свойству «размер». Задача фильтровать — показывать только те товары, у которых есть в остатках нужный размер.
Пример из документации отфильтровывает товары, общее значение остатков совпадает с указанным в вызове количеством, без учета фильтруемого размера.
Как скорректировать запрос?
Localizator: TV и MIGX не переводило, а ларчик оказалось открывался просто
Столкнулся с одной особенностью работы Localizator с MIGX и TV.
Все никак не получалось заставить Localizator правильно переводить MIGX поля и в некоторых случаях отдельные TV поля. Перепробовал кучу вариантов, пытался выводить через выводы сниппетов localizator, pdoResources, getImageList. Потратил пару суток впустую, кучу нервов и сил.
А в итоге оказалось все просто. Случайно обнаружил что некоторые TV переводит, а некоторые нет.
В некоторых местах я MIGX выводил следующим образом:
В итоге вывод этого кода не переводился как надо, выводился только MIGX не из переводов.
Но если заменить
Все никак не получалось заставить Localizator правильно переводить MIGX поля и в некоторых случаях отдельные TV поля. Перепробовал кучу вариантов, пытался выводить через выводы сниппетов localizator, pdoResources, getImageList. Потратил пару суток впустую, кучу нервов и сил.
А в итоге оказалось все просто. Случайно обнаружил что некоторые TV переводит, а некоторые нет.
В некоторых местах я MIGX выводил следующим образом:
{set $rows = json_decode($_modx->resource.id | resource : 'migx_why_us_list', true)}
{foreach $rows as $idx =>$row1 index=$index}
<li>
{$row1.textprichini}
</li>
{/foreach}
где migx_why_us_list — MIGX поле.В итоге вывод этого кода не переводился как надо, выводился только MIGX не из переводов.
Но если заменить
$_modx->resource.id | resource : 'migx_why_us_list'
на $_modx->resource.migx_why_us_list
то все начинает работать как надо. Свое поле в заказе
3 1 000
Напишите свою стоимость и я буду согласовывать ее с заказчиком.
Требуется в корзине MS2 и в форме msOneClick добавить поле с типом number и min=«25» для изменения веса у каждого товара в корзине и в msOneClick.
Я попробовал добавить поле, но в письме и в заказе вес прописывается без изменений.
Смысл в том, что любой товар можно купить в любом количестве (товар весовой) и во время заказа в корзине покупатель пишет требуемый вес в килограммах. Далее менеджер связывается с ним и оговаривает стоимость.
Мне подсказали, что надо написать плагин, который будет передавать вес в заказ (этого я сам не могу сделать).
Нужна помощь.
Требуется в корзине MS2 и в форме msOneClick добавить поле с типом number и min=«25» для изменения веса у каждого товара в корзине и в msOneClick.
Я попробовал добавить поле, но в письме и в заказе вес прописывается без изменений.
Смысл в том, что любой товар можно купить в любом количестве (товар весовой) и во время заказа в корзине покупатель пишет требуемый вес в килограммах. Далее менеджер связывается с ним и оговаривает стоимость.
Мне подсказали, что надо написать плагин, который будет передавать вес в заказ (этого я сам не могу сделать).
Нужна помощь.
как менять вес в корзине?
Здравствуйте!
Заказчик просит в корзине дать возможность покупателю прописать требуемый вес для каждого товара.
Я попробовал сделать по аналогии с количеством, но в списке заказов и на почту приходит вес без изменений.
Подскажите, что нужно подправить, чтобы в заказ передавался вес из корзины?
Заказчик просит в корзине дать возможность покупателю прописать требуемый вес для каждого товара.
Я попробовал сделать по аналогии с количеством, но в списке заказов и на почту приходит вес без изменений.
Подскажите, что нужно подправить, чтобы в заказ передавался вес из корзины?
<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>
Доработка mSync
5
Все привет!
Необходимо доработать импорт товаров из 1с УТ 10.3 в minishop. Установлен mSync, импорт падает с ошибками.
Для разработки можем предоставить архив с файлами выгрузки, в дальнейшем доступ к серверу.
Подробнее с кандидатом.
Необходимо доработать импорт товаров из 1с УТ 10.3 в minishop. Установлен mSync, импорт падает с ошибками.
Для разработки можем предоставить архив с файлами выгрузки, в дальнейшем доступ к серверу.
Подробнее с кандидатом.
Задваиваются письма
При регистрации пользователя через 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Как сделать так чтобы второе не уходило админу
Вывести теги товара на странице товара zoomx (smarty)
Здравствуйте!
upd 29.05.2024:
Это простое решение как вывести теги товара на странице товара используя сниппет msOptions.
Просто выводит список тегов теги, которые можно оформить как нужно.
Вызов в шаблоне товара через сниппет (zoomx, smarty):
Код чанка:
Загрузить в /core/elements/chunks (создать папки «elements» и «chunks» если нет. Если изменяли путь до ядра — заменить на свой).
{ $tag } Можно оформить как нужно:
т.е:
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}
where по одному полю для двух ресурсов
Здравствуйте!
Хочу сделать связь ресурсов по одному полю.
Имею поле connection, в котором множественный выбор.
Это поле добавляется абсолютно ко всем ресурсам. И пытаюсь организовать связь ресурсов.
Но данная схема не работает:
Вот весь мой код вывода связи ресурсов:
Хочу сделать связь ресурсов по одному полю.
Имею поле 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}