20 июля 2017, 00:33 Примерно так можно (на примере способов оплаты): {foreach $payments as $payment} <label class="payment input-parent"> <input type="radio" name="payment" value="{$payment.id}" id="payment_{$payment.id}" {$payment.id == $order.payment ? 'checked' : ''}> {set $paymentname = 'po_pay_' ~ $payment.name | translit} {$paymentname | lexicon} {if $payment.description?} {set $paymentdescr = 'po_pay_descr_' ~ $payment.description | translit} <small> {$paymentdescr | lexicon} </small> {/if} </label> {/foreach} translit — сниппет транслитерации. Новые дополнения и их версии / [localizator] Мультиязычность, СЕО, автоперевод... 353 0
15 июля 2017, 15:06 Спасибо! Новые дополнения и их версии / [localizator] Мультиязычность, СЕО, автоперевод... 353 0
15 июля 2017, 13:50 Может кому пригодится: <?php $local = $modx->newObject('localizatorContent'); $local->set('key', 'en'); $local->set('resource_id',35); $local->set('pagetitle','TEST'); $local->set('content','TEST CONTENT'); $local->set('ative',1); $local->save();Доступные поля можно посмотреть в БД Новые дополнения и их версии / [localizator] Мультиязычность, СЕО, автоперевод... 353 0 1
15 июля 2017, 13:30 Может есть у кого пример кода, как перенести контент ресурсов в определенную языковую версию. Или как через API создать перевод. Новые дополнения и их версии / [localizator] Мультиязычность, СЕО, автоперевод... 353 0
11 июля 2017, 22:31 Методом тыка все-таки нашел нужное событие:) Вот такой плагин получился (возможно что-то лишнее): <?php $eventName = $modx->event->name; switch($eventName) { //case 'OnWebPageInit': //if ($modx->context->get('key') == 'mgr') {return;} //$modx->lexicon->load($modx->cultureKey . ':minishop2:default'); //break; case 'OnParseDocument': if ($modx->context->get('key') == 'mgr') {return;} $lang = $_COOKIE['lang']; if(!$lang) return; $modx->setOption('cultureKey', $lang); $modx->lexicon->load($lang . ':minishop2:default'); break; case 'OnLoadWebDocument': if ($modx->context->get('key') == 'mgr') {return;} $value = $modx->getOption('cultureKey'); setcookie("lang", $value, time() + (86400 * 365)); break; } return; Новые дополнения и их версии / [localizator] Мультиязычность, СЕО, автоперевод... 353 0
11 июля 2017, 21:43 У кого-нибудь получилось сделать чтобы при ajax-пагинации или при фильтрации через mFilter2 сохранялся текущий язык? Этот коммент видел, но у меня не получилось сделать modx.pro/components/12012-localizator-multilingual-seo-translation/#comment-82299 Новые дополнения и их версии / [localizator] Мультиязычность, СЕО, автоперевод... 353 0
10 июля 2017, 22:45 И еще есть готовый компонент modstore.pro/packages/payment-system/mspbepaid Вопросы / Передать заголовки и данные с modrestcurlclient 4 +1
10 июля 2017, 22:42 Я делал интеграцию по примеру paypal github.com/bezumkin/miniShop2/blob/master/core/components/minishop2/custom/payment/paypal.class.php#L135 Вопросы / Передать заголовки и данные с modrestcurlclient 4 0
10 июля 2017, 22:39 Нужно вызвать сниппет не кэшируемым [[!pdoSitemap]] Вопросы / pdoSitemap: автоматическое добавление в sitemap 5 0
09 июля 2017, 20:57 Я через MIGX в MIGX сделал. Первый уровень — выбор языка. Список языков подтягивается из компонента. prntscr.com/ftjy5v prntscr.com/ftjxlz Новые дополнения и их версии / [localizator] Мультиязычность, СЕО, автоперевод... 353 0
09 июля 2017, 20:53 Можно через настройку форм скрывать ненужные поля www.youtube.com/watch?v=G7N-Ku5GpsI&t=1s Вопросы / Дополнительное поле для "категории" 1 0
06 июля 2017, 11:06 $child = $modx->getChildIds(49, 10, array('context' => 'web')); //49 - id, 10 - вложенность $collection = $modx->getCollection('modResource', array( 'id:IN' => $child, 'template' => 8, // 'deleted' => false, )); Вопросы / Выборка дочерних ресурсов через Console 1 +3
05 июля 2017, 18:15 Добрый день! Готов взяться. Скиньте ТЗ. Контакты в профиле. Объявления о работе / Разработка сайта для юридического бюро 11 0
30 июня 2017, 02:44 Как используя это событие изменить не только $price но и $old_price? Вопросы / Поменять цену у товара через плагин 9 0
25 июня 2017, 16:57 Как правильно прописать base href="{$_modx->config.site_url}" для такого варианта s9732.h8.modhost.pro/en/? Сейчас у меня там выводится только домен. Новые дополнения и их версии / [localizator] Мультиязычность, СЕО, автоперевод... 353 0
25 июня 2017, 02:26 {$_modx->runSnippet('msVendor', [ 'vendor' => $_modx->resource.pagetitle, 'tpl' => 'tpl.msVendor', ])}tpl.msVendor: <img src="[[+logo]]" alt="{$_modx->resource.pagetitle}" width="150px"> {$_modx->runSnippet('!msProducts', [ 'parents' => 58, 'limit' => 18, 'includeThumbs' => 'medium', 'tpl' => 'HomeSliderItemTpl', 'optionFilters' => '{ "vendor:=":[[+id]] }', ])}Сниппет msVendor: <?php /** * @Author: Anton Jukov * https://github.com/2ball/modx/tree/master/msVendor * https://bezumkin.ru/sections/tips_and_tricks/2918/ */ if (!empty($scriptProperties['vendor'])) { // $vendor = $modx->getObject('msVendor', $scriptProperties['vendor']); $vendor = $modx->getObject('msVendor', array('name' => $scriptProperties['vendor'])); //Check vendor exist if (is_object($vendor)) { //Get fields data $vendor = $vendor->_fields; //Get content if ($scriptProperties['includeContent'] == 1) { if (!empty($vendor['resource'])) { $resource = $modx->getObject('modResource', $vendor['resource']); if (is_object($resource)) { $vendor['pagetitle'] = $resource->get('pagetitle'); $vendor['introtext'] = $resource->get('introtext'); $vendor['content'] = $resource->get('content'); } } } //How to return? if ($scriptProperties['returnData'] == 1) { if (!empty($scriptProperties['returnOption'])) { return $vendor[$scriptProperties['returnOption']]; } else { return $vendor; } } else { $output = $modx->getChunk($scriptProperties['tpl'], $vendor); return $output; } } else { return false; } } else { return false; } Вопросы / Вывести поля производителя на отдельную страницу? 2 0
24 июня 2017, 01:18 Ну как, получилось? С такой же проблемой столкнулся. Новые дополнения и их версии / [localizator] Мультиязычность, СЕО, автоперевод... 353 0
17 июня 2017, 02:10 Тоже сделал так — через консоль не хотел устанавливаться webhook. Новые дополнения и их версии / [modTelegram] - Telegram сообщения 140 0
08 июня 2017, 17:42 У меня получилось решить данную проблему. Во первых нужно удалить ранее зарегистрированные сервисы: if ($miniShop2 = $modx->getService('miniShop2')) { $miniShop2->removeService('delivery', 'MskDelivery'); }Создаем файл в core/components/minishop2/custom/delivery/msdeliverycourierhandler.class.php <?php if (!class_exists('msDeliveryHandler')) { require_once dirname(dirname(dirname(__FILE__))) . '/model/minishop2/msdeliveryhandler.class.php'; } class msDeliveryCourierHandler extends msDeliveryHandler implements msDeliveryInterface { public function getCost(msOrderInterface $order, msDelivery $delivery, $cost = 0.0) { $freedeliverysumm = 90; $cart = $order->ms2->cart->status(); $cart_cost = $cart['total_cost']; if($cart_cost > $freedeliverysumm){ return $cost; }else{ $delivery_cost = parent::getCost($order, $delivery, $cost); return $delivery_cost; } } }Регистрируем: if ($miniShop2 = $modx->getService('miniShop2')) { $miniShop2->addService('delivery', 'msDeliveryCourierHandler', '{core_path}components/minishop2/custom/delivery/msdeliverycourierhandler.class.php' ); } Вопросы / Бесплатная доставка курьером от определенной суммы 27 +1 2
gtsAPI 1.1.7 — таблицы на TanStack, инлайн-редактирование как в Excel Prime Vue datatable тупит на 200+ строк и в виртуальном скролинге высота полей фиксирована. Вот нам в итоге и не подошло. Директор сказал расчет должен сразу показываться без пагин...
mxApi — быстрый внешний API для MODX Revolution • зафиксировать публичный контракт EndpointInterface / метаданных по semver, чтобы наш провайдер не ломался на обновлениях;Фактически это уже так, beta стоит просто на всякий случа...
YaSmartCaptcha - защитите ваши формы от спама умной капчей от Яндекс Вообще не понял о чем речь) В системной настройке service_js сейчас указана ссылка smartcaptcha.cloud.yandex.ru/captcha.js Я предложил очистить эту настройку, тогда компонент н...
mxBackup — обезличенные копии MODX в пару кликов Ещё нет, я там разом почти полтора десятка пакетов выложил модератор, вероятно, а шоке.
Gallery3x 3.4.0 - вставка галерей прямо из визуального редактора (CKEditor и TinyMCE RTE) Здравствуйте. Есть консольный скрипт Вот почитайте: docs.ivan345.com/books/gallery3x/page/import-ms2galleryphp
[mSync] Новая версия синхронизации с 1С Всем привет. В какой то момент начали сыпаться ошибки: Error 23000 executing statement: INSERT INTO `modx_msync_products` (`product_id`, `uuid_1c`) VALUES ...
translit — сниппет транслитерации.
Доступные поля можно посмотреть в БД
Или как через API создать перевод.
Вот такой плагин получился (возможно что-то лишнее):
Этот коммент видел, но у меня не получилось сделать modx.pro/components/12012-localizator-multilingual-seo-translation/#comment-82299
prntscr.com/ftjy5v
prntscr.com/ftjxlz
Сейчас у меня там выводится только домен.
Сниппет msVendor:
Во первых нужно удалить ранее зарегистрированные сервисы:
Создаем файл в core/components/minishop2/custom/delivery/msdeliverycourierhandler.class.php
Регистрируем: