Андрей
Доберусь вечером до компа, гляну настройки у себя
Артур
Доберусь вечером до компа, гляну настройки у себя
Так у меня на другом сайте настройки 1 в 1 и всё работает
Артур
Может это из Babel?
Sentinel
Проверь редиректы
Артур
Может заморожен url у тебя?
На первый взгляд нет
Артур
Проверь редиректы
Где проверить?
Sentinel
autoredirector или seotab стоит?
Артур
Semyon
Добрый день всем. Ребят такой вопрос. купил модуль mSearch2. Есть такой вывод товаров, сделанный через pdoPage. Теперь появилась необходимость сделать фильтры и сортировку на товары. Кто-то может пояснить сниппет mFilter делает вывод товаров и фильтр с сортировкой, или же он отвечает лишь за фильтр
Артур
Semyon
да чёт не понял ничего
Артур
да чёт не понял ничего
Чего ты не понял. Есть два параметра paginator и element. В первом пишешь название снипетта отвечающего за пагинацию, во втором сниппет который будет отвечать за вывод. А mFilter2 он только фильтрует.
Semyon
хм
Semyon
не понимаю :)
Иван
Почитайте документацию..
Иван
Суббота же.
Semyon
туплю сильно, поэтому документацию я точно не осилю
Semyon
я пытался, ничего не поняв пошёл сюда
Semyon
Semyon
спасибо
Артур
Вот тебе пример может проще будет
Semyon
да то чтоужно
Anonymous
Парни, привет. Нужно поменять язык главной странице. Установлен плагин Babel. Менял айди и что в контексте попробовал изменить. Готов заплатить. Спасибо
Semyon
такс, я так понимаю ajaxTplmore не работает
Semyon
с mFilter
Dmitriy
Добрый вечер, подскажите, есть ли возможность сортировать товары через mfilter2, но выводить не сами товары, а их родителей? Нашел статью, но там не допилено, вызывается сниппет: <?php // Он работает только, если это вывод товаров, а не запрос подходящих id if (empty($returnIds)) { // Присоединяем таблицу категорий if (empty($innerJoin) || !$where = $modx->fromJSON($innerJoin)) { $innerJoin = array(); } $innerJoin['Category'] = array( 'class' => 'msCategory', ); $scriptProperties['innerJoin'] = $modx->toJSON($innerJoin); // Группируем по категории $scriptProperties['groupby'] = 'Category.id'; // Заменяем поля товаров полями категорий $scriptProperties['select'] = $modx->toJSON(array( 'Category' => '*', // Можно переопределить еще и выборку полей товара, чтобы были с префиксом, // но я это закомментировал, потому что поля Data и так доступны, а товары не нужны //'msProduct' => $modx->getSelectColumns('msProduct', 'msProduct', 'product.'), //'Data' => $modx->getSelectColumns('msProductData', 'Data', 'data.'), )); } // Мы добавили свой опции, а дальше пусть работает стандартный сниппет return $modx->runSnippet('msProducts', $scriptProperties); На странице каталога получается, что сколько самих товаров, столько раз и выводится родитель, можно ли их как-то объеденить? https://faliant.ru/truby/
Dmitriy
Я уже думал может через jquery как-то оставлять только первый элемент с одинаковым id
Dmitriy
Но тогда надо скрипт вешать на загрузку страницы и на изменение в фильтре
Dmitriy
Подскажите, как можно реализовать
Semyon
ого ну и вопросик
Semyon
Ребят почему htag не убирается
Semyon
Semyon
Добрый вечер, подскажите, есть ли возможность сортировать товары через mfilter2, но выводить не сами товары, а их родителей? Нашел статью, но там не допилено, вызывается сниппет: <?php // Он работает только, если это вывод товаров, а не запрос подходящих id if (empty($returnIds)) { // Присоединяем таблицу категорий if (empty($innerJoin) || !$where = $modx->fromJSON($innerJoin)) { $innerJoin = array(); } $innerJoin['Category'] = array( 'class' => 'msCategory', ); $scriptProperties['innerJoin'] = $modx->toJSON($innerJoin); // Группируем по категории $scriptProperties['groupby'] = 'Category.id'; // Заменяем поля товаров полями категорий $scriptProperties['select'] = $modx->toJSON(array( 'Category' => '*', // Можно переопределить еще и выборку полей товара, чтобы были с префиксом, // но я это закомментировал, потому что поля Data и так доступны, а товары не нужны //'msProduct' => $modx->getSelectColumns('msProduct', 'msProduct', 'product.'), //'Data' => $modx->getSelectColumns('msProductData', 'Data', 'data.'), )); } // Мы добавили свой опции, а дальше пусть работает стандартный сниппет return $modx->runSnippet('msProducts', $scriptProperties); На странице каталога получается, что сколько самих товаров, столько раз и выводится родитель, можно ли их как-то объеденить? https://faliant.ru/truby/
попробуй выводить ресурсы с шаблоном определённым, к примеру как раз каталога
Semyon
можно даже лучше наверное, сделать вывод ресурсов msCategoty
😁
всем привет
😁
подскажите плиз, как запусть снипет по регенерации превью товатов? снипет есть. как в консоли это сделать? не пользовался подобным
Максим
Есть плагин console, установи - пакеты - установщик и в поиске вбей console
Alisa
$modx->runSnippet
Сергей Шлоков
Через процессор system/country/getlist.
Сергей Шлоков
С телефона объяснить вряд ли смогу. Вызвать процессор в сниппете, взять результат и обернуть в HTML разметку select.
Андрей
А ещё ты можешь закинуть список стран в папку - core/components/formit/includes/ru.countries.inc.php И выводить {'!FormItCountryOptions' | snippet : ['country' => 'ru']}
Андрей
Вот так можешь сделать
Андрей
Честно говоря хз, ни разу не доводилось использовать)
Александр
Привет! Подскажите пожалуйста, в кастомном хуке создаю поле для вызова в письме с именем 'fileOrder', но при вызове в письме получаю на почту пустое письмо. В вызове preloadHook и вызове поля в форме [[+fi.fileOrder]] массив подтягивается. Т.е. код работает.
Александр
Вызываю так
Александр
В письме вызываю через [[+fileOrder]]
Александр
Привет! Подскажите пожалуйста, в кастомном хуке создаю поле для вызова в письме с именем 'fileOrder', но при вызове в письме получаю на почту пустое письмо. В вызове preloadHook и вызове поля в форме [[+fi.fileOrder]] массив подтягивается. Т.е. код работает.
Если fi.fileOrder кинуть в value инпута и вызвать инпут, я получаю на почту письмо, поломанное из за нарушений вёрстки, но суть в том что оно приходит. Не могу понять как вызвать тот же самый код без value
Александр
Нашёл в доке такую штуку, работает если использовать хук email, есть возможность сделать это без email хука? Или получить параметры хука email в свой хук можно как-то?
Артур
Нашёл в доке такую штуку, работает если использовать хук email, есть возможность сделать это без email хука? Или получить параметры хука email в свой хук можно как-то?
Ты в хуке можешь получить любое поле из массива post и отправить письмо через апи Modx функция sendMail кажется называется.
Александр
Привет! Подскажите пожалуйста, в кастомном хуке создаю поле для вызова в письме с именем 'fileOrder', но при вызове в письме получаю на почту пустое письмо. В вызове preloadHook и вызове поля в форме [[+fi.fileOrder]] массив подтягивается. Т.е. код работает.
Крч как я понял значения этого сниппета никуда не сохраняются при отправке через обычный сниппет. Т.е. при preloaderHook всё сохраняется. А через обычный hook нет. Кто знает в чём может быть причина?
Irina
Друзья! Сайт на движке MODX CMS. Требуется Исполнитель для обновления сайта (1 этап - заглушка, второй многостраничный сайт). Работа строго по договору (самозанятый, ИП) спасибо
Александр
Ты в хуке можешь получить любое поле из массива post и отправить письмо через апи Modx функция sendMail кажется называется.
Вот так происходит отправка самого письма <?php $fields = $hook->getValues(); $message = $modx->getChunk('tpl.mail.price', $fields); $modx->getService('mail', 'mail.modPHPMailer'); $modx->mail->set(modMail::MAIL_BODY, $message); $modx->mail->set(modMail::MAIL_FROM, $modx->getOption('emailsender')); $modx->mail->set(modMail::MAIL_FROM_NAME, $modx->getOption('site_name')); $modx->mail->set(modMail::MAIL_SUBJECT, 'Прайс-лист'); $modx->mail->address('to', $fields['email']); $modx->mail->address('reply-to', $modx->getOption('emailsender')); $modx->mail->setHTML(true); $dir = 'prices'; if ( $handle = opendir( $dir ) ) { while ( $file = readdir($handle) ) { for ($i=0; $i<count($file); $i++) if(($file != '.') && ($file != '..') && ($file[0] != '.')) { $file = mb_convert_encoding($file, "utf-8", "windows-1251"); $file = '<br /><a href="https://.../prices/'.$file.'">'.$file.'</a>'; $fileOrder[] = $file; } }; closedir( $handle ); }; $hook->setValue('fileOrder', $fileOrder); if (!$modx->mail->send()) { $modx->log(modX::LOG_LEVEL_ERROR,'An error occurred while trying to send the email: '.$modx->mail->mailer->ErrorInfo); } $modx->mail->reset(); return true;
Irina
Спасибо, Артур !
Артур
Вот так происходит отправка самого письма <?php $fields = $hook->getValues(); $message = $modx->getChunk('tpl.mail.price', $fields); $modx->getService('mail', 'mail.modPHPMailer'); $modx->mail->set(modMail::MAIL_BODY, $message); $modx->mail->set(modMail::MAIL_FROM, $modx->getOption('emailsender')); $modx->mail->set(modMail::MAIL_FROM_NAME, $modx->getOption('site_name')); $modx->mail->set(modMail::MAIL_SUBJECT, 'Прайс-лист'); $modx->mail->address('to', $fields['email']); $modx->mail->address('reply-to', $modx->getOption('emailsender')); $modx->mail->setHTML(true); $dir = 'prices'; if ( $handle = opendir( $dir ) ) { while ( $file = readdir($handle) ) { for ($i=0; $i<count($file); $i++) if(($file != '.') && ($file != '..') && ($file[0] != '.')) { $file = mb_convert_encoding($file, "utf-8", "windows-1251"); $file = '<br /><a href="https://.../prices/'.$file.'">'.$file.'</a>'; $fileOrder[] = $file; } }; closedir( $handle ); }; $hook->setValue('fileOrder', $fileOrder); if (!$modx->mail->send()) { $modx->log(modX::LOG_LEVEL_ERROR,'An error occurred while trying to send the email: '.$modx->mail->mailer->ErrorInfo); } $modx->mail->reset(); return true;
А зачем ты setValue делаешь и письмо отправляешь в одном хуке? Мне кажется либо ты устанавливаешь значение и передаешь его дальше, либо ты получаешь весь POST, сам обрабатыешь и сам отправляешь.
Артур
Спасибо, Артур !
Ещё версию движка уточните
Артур
А то может у вас Evo, тогда вам в другую группу
Александр
Проблема самая главная это то, что плейсхолдер вообще не отправляется. На почту приходит [[+fileOrder]]
Александр
А это не мой хук?
Александр
Как?
Артур
А это не мой хук?
Ты написал про два хука
Артур
Как?
Напиши свой хук в котором обрататывай post и отправляй письмо. Я бы тебе пример скинул но у меня комп не работает света нет
Александр
Ты предлагаешь весь скелет письма написать внутри php хука и отправлять его по нажатию на кнопку на сайте?:
Александр
Да
Александр
У меня есть письмо в которое надо положить "$fileOrder"
Артур
Да
Ну нет, зачем там же можно передать массив, распарсить чанк
Александр
Красивые конечно слова но исходя из моих знаний я предполагаю что сделать плейсхолдер проще.
Александр
Всё равно спасибо за помощь)