Программист на долгосрочное сотрудничество для создания, развития и техподдержки сайтов на MODX revo
Добрый день! Есть уже созданные проекты и сайты на MODX revo, которые необходимо обслуживать и поддерживать, добавлять различные функции и интеграции.Так же будут создаваться новые сайты и проекты. Работа интересная, но не простая — поэтому кандидат должен быть с опытом, обладать трудолюбием и отве́тственностью, вниманием к деталям и желанием довести начатое до логического завершения. Приветствуется креативное мышление и подход, есть небольшая, но дружна команда из дизайнера и верстальщика. На данные момент в срочном порядке требуется ряд интеграций при помощи готовых модулей с modstore.pro. Буду рад пообщаться с кандитатом, спасибо, что прочитали!
Модуль расчёта доставки для новой версии eShopLogistic.ru (бета)
Основной функционал:
Если у вас есть своя служба доставки или просто пункты самовывоза, вы можете настроить собственную службу наравне с внешними.
Демонстрация возможностей модуля и подробная документация доступны на демо-сайте:
modx-v3.eshoplogistic.ru.
Дополнительная информация: https://new.eshoplogistic.ru/moduli-dlja-cms/modx.html.
Компонент в modstore: modstore.pro/packages/delivery/eshoplogistic3
- расчёт стоимости и сроков заказа сразу для нескольких транспортных компаний на одной карте в корзине и карточке товара;
- пересчёт доставки в панели управления заказами minishop2;
- выгрузка заказов в кабинет транспортной компании;
- вывод на печать этикеток (если такой функционал есть у выбранной ТК).
Если у вас есть своя служба доставки или просто пункты самовывоза, вы можете настроить собственную службу наравне с внешними.
Демонстрация возможностей модуля и подробная документация доступны на демо-сайте:
modx-v3.eshoplogistic.ru.
Дополнительная информация: https://new.eshoplogistic.ru/moduli-dlja-cms/modx.html.
Компонент в modstore: modstore.pro/packages/delivery/eshoplogistic3
Как прикрепить к письму файл что был сгенерирован в хуке в ajaxForm/Formit?
В форме нет файла(так же нет в приципе инпута, и указания мультипарта), но в хуке перед отправкой создаётся файл, как его прикрепить к письму?
Список ресурсов в TV и checked
Здравствуйте!
С помощью следующего кода, вывожу список ресурсов в дополнительном поле. Вот код:
Но данный код просто выводит список ресурсов. Мне необходимо чтобы этот список ресурсов был отмечен, то есть список ресурсов как опции уже были автоматически отмечены (checked). Какой код необходимо дописать чтобы ресурсы как опции были отмечены автоматически при редактирования ресурса?
Тип ввода: Флажки (checkbox)
Код сохранен в поле «Возможные значения». А поле «Значение по умолчанию» пустое.
Список ресурсов отлично отображается. Но ресурсы не отмечены, то есть не имеют статус checked, А ресурсов довольно много чтобы вручную отмечать.
Пожалуйста, подскажите какой код дописать чтобы ресурсы были автоматически отмечены.
Спасибо
С помощью следующего кода, вывожу список ресурсов в дополнительном поле. Вот код:
@SELECT `pagetitle`, `id` FROM `[[+PREFIX]]site_content` WHERE `template` IN (72, 37).
Это необходимо для связки ресурсов с другими ресурсами.Но данный код просто выводит список ресурсов. Мне необходимо чтобы этот список ресурсов был отмечен, то есть список ресурсов как опции уже были автоматически отмечены (checked). Какой код необходимо дописать чтобы ресурсы как опции были отмечены автоматически при редактирования ресурса?
Тип ввода: Флажки (checkbox)
Код сохранен в поле «Возможные значения». А поле «Значение по умолчанию» пустое.
Список ресурсов отлично отображается. Но ресурсы не отмечены, то есть не имеют статус checked, А ресурсов довольно много чтобы вручную отмечать.
Пожалуйста, подскажите какой код дописать чтобы ресурсы были автоматически отмечены.
Спасибо
Подскажите как реализовать вывод другого чанка в pdoResources
Добрый день, подскажите как можно реализовать через pdoResources так, чтобы через каждый 3 блока выводился другой чанк, который будет выводить другую информацию.
Для примера приложил картинку, как это должно быть по крайне мере в моей голове.
Сейчас у меня вот так
Для примера приложил картинку, как это должно быть по крайне мере в моей голове.
Сейчас у меня вот так
[[!pdoResources?
parents=`[[*id]]`
tpl=`one_test`
includeTVs=`img,newHome,change,price,street`
]]
Как в mSync изменить категорию товара при импорте?
Здравствуйте!
В 1С и на сайте немного отличается дерево категорий, поэтому отключили импорт категорий. На какое событие писать плагин, чтобы можно было заменить категорию minishop2 у товара при импорте?
В 1С и на сайте немного отличается дерево категорий, поэтому отключили импорт категорий. На какое событие писать плагин, чтобы можно было заменить категорию minishop2 у товара при импорте?
Подскажие, как вывести сообщение об ошибке Ajaxform через $.jGrowl
Вызываю Ajaxform с параметрами
А мне бы хотелось, чтобы еще всплывало «Email точно правильный?»
Если вывожу в форме
Вопрос: как его закинуть во всплывающее сообщение?
&hooks=`email`
&validate=`name:required,email:email:required,message:required:minLength=^6^`
&vTextMinLength=`Пожалуйста введите тему, от 6 символов.`
&message.vTextRequired=`Пожалуйста введите тему.`
&validationErrorMessage=`В форме содержатся ошибки!`
&successMessage=`Ваше сообщение отправлено
Наши специалисты свяжутся с вами в ближайшее время.`
&vTextEmailInvalid=`Email точно правильный?`
При вводе неправильного email всплывает стандартное сообщение «В форме содержатся ошибки!»А мне бы хотелось, чтобы еще всплывало «Email точно правильный?»
Если вывожу в форме
<span class="error_email">{$fi.error.email}</span>
то сообщение об ошибке появляется в статическом поле. Вопрос: как его закинуть во всплывающее сообщение?
[msProducts] Как вывести товары у которых old_price больше чем price
Здравствуйте!
Ситуация следующая: 1С-ники выгружают цены на сайт таким образом, что, если у товара есть скидка, то актуальная цена выгружается в свойство товара price, а старая цена — в old_price. Но если у товара нет скидки, они выгружают в price и old_price одинаковые значения цен.
Вопрос: как сформулировать запрос к msProducts, чтобы он выводил только товары у которых old_price > price?
Заранее спасибо за подсказку
Ситуация следующая: 1С-ники выгружают цены на сайт таким образом, что, если у товара есть скидка, то актуальная цена выгружается в свойство товара price, а старая цена — в old_price. Но если у товара нет скидки, они выгружают в price и old_price одинаковые значения цен.
Вопрос: как сформулировать запрос к msProducts, чтобы он выводил только товары у которых old_price > price?
{'!msProducts' | snippet:[
'tpl' => 'tpl_products_listing',
'limit' => 30,
'parents' => 0,
'sortby' => 'RAND()',
'includeThumbs' => 'webp_m',
'where' => '[{ "Data.old_price:>":"Data.price" }, { "Data.internet_magazin":"1" }]'
]}
Вот такая конструкция всё равно выводит любые товары. Или я вообще неправильно пытаюсь решить эту задачу? А как тогда надо?Заранее спасибо за подсказку
mSearch2 Не показываются заголовки и выбранных фильтров, в чем проблема?
Не показываются заголовки и выбранных фильтров, в чем проблема?
ovk.w91518tl.beget.tech/konvektoryi/vnutripolnyie/?tv|dlinna=1000&tv|visota=90
Может сюда можно переменную подставить какую небуть
ovk.w91518tl.beget.tech/konvektoryi/vnutripolnyie/?tv|dlinna=1000&tv|visota=90
Может сюда можно переменную подставить какую небуть
&filterOptions=`{
"selected_tpl": " <a href='#' data-id='_id_' class='mse2_selected_link'><em>_title_</em><sup>x</sup></a>",
"selected_wrapper_tpl": "<strong>_title_:</strong> ",
"selected_filters_delimeter": "; ",
"selected_values_delimeter": " , "
}`
Регистрация user через процессоры (formit)
Привет,
Сталкнулся с такой проблемой. При регистрации пользователя из фронтенда, не записывается информация в кастомные поля modUserProfile из под ананимного профиля.
Подключаюсь к процессору так:
Сталкнулся с такой проблемой. При регистрации пользователя из фронтенда, не записывается информация в кастомные поля modUserProfile из под ананимного профиля.
Подключаюсь к процессору так:
<?php
require_once MODX_CORE_PATH.'model/modx/modx.class.php';
$modx = new modX();
$modx->initialize('web');
$modx->getService('error', 'error.modError', '', '');
// Массив с данными пользователя
$tel = $hook->getValue('phone');
$chars = ['+','(',')','-']; // символы для удаления
$tel = str_replace($chars, '', $tel);
$dobo = $hook->getValue('birth_at');
list($d, $m, $Y) = explode(".", $dobo);
$pasDate = $hook->getValue('datePassport');
$pasDate = strtotime($pasDate);
function filtr($parametr,$date = '-'){
$filtr = str_replace($date, '', $parametr);
return $filtr;
}
$groups = [
'Users' => [
'usergroup' => '2', // id группы Users
'role' => '1' // id роли Member
]
];
$data = array(
'username'=>$tel,
'groups' => $groups,
'fullname'=>$hook->getValue('last')." ".$hook->getValue('first')." ".$hook->getValue('patronymic'),
'email'=>$hook->getValue('email'),
'mobilephone'=>$hook->getValue('phone'),
'dob' => $Y.'/'.$m.'/'.$d,
'ip' => $_SERVER['REMOTE_ADDR'],
// Прописка
'zip'=>$hook->getValue('zip'),
'state'=>$hook->getValue('region'),
'city'=>$hook->getValue('city'),
'street'=>$hook->getValue('street'),
'building'=>$hook->getValue('building'),
'apartment'=>$hook->getValue('apartment'),
// Паспорт
'pasSeriaNumber'=>filtr($hook->getValue('passport'),' '),
'pasDate'=>$pasDate,
'pasCod'=>filtr($hook->getValue('unitCod')),
'pasWho'=>$hook->getValue('passportLocal'),
'pasPlace'=>$hook->getValue('birthplace'),
'pdDate'=>time(),
'active' => true,
'passwordnotifymethod' => 'e'
);
// запуск процессора
$response = $modx->runProcessor('/security/user/create', $data);
// если есть ошибки выводим ошибки, если нет то пользователь зарегистрирован
if ($response->isError()) {
$modx->log(modX::LOG_LEVEL_ERROR, 'login error. Username: '.$username.', Message: '.$response->getMessage());
}
Подскажите светлые умы, что нужно сделать чтоб записывалось в кастомные поля?