20 марта 2016, 07:28 Когда делал и выкладывал компонент, не знал, что существует подобный. Но есть отличия наших компонентов: 1. В моём можно добавлять любые данные, а не только какие-то определённые. 2. В моём можно изменять цены товаров для различных городов. 3. Планируется сделать определение выбранного города и работу компонента по ссылкам и доменам. То есть, при переходе по ссылке moscow.site.ru или site.ru/moscow/ будет выбран город Москва и выводится данные, добавленные для этого города. Я не знаю как сделать так, чтобы на тестовом сервере можно было устанавливать мои компоненты. Новые дополнения и их версии / cityFields. Города, информация и цены для каждого 92 +1
19 марта 2016, 19:04 Пока нет. В ближайшее время появится определение города по ip. Новые дополнения и их версии / cityFields. Города, информация и цены для каждого 92 0
15 марта 2016, 16:23 $assigned = $instance;Этот код клонирует объект $instance и записывает в переменную $assigned указатель на клонированный. $reference =& $instance;&$instance — указатель на объект. Соответственно, класс не клонируется, а у объекта просто появляется второе имя. То есть теперь $instance и $reference — это одно и то же. И любые изменения в одной переменной ведут к изменениям в другой. Вопросы / Вопрос к знатокам PHP 3 0
15 марта 2016, 04:07 Можно. Если в настройках указаны свойства, а у товара отсутствуют значения в этих свойствах, то для такого товара создаётся только одна запись остатков без учёта свойств. Новые дополнения и их версии / [msProductRemains] Остатки без свойств и другое 7 0
13 марта 2016, 12:24 Обработчик события успешного добавления товара в корзину: miniShop2.Callbacks.Cart.add.response.success = function(response) { //здесь ваш js-код } /* Но не забывайте, что есть событие изменения количества товара в корзине */ miniShop2.Callbacks.Cart.change.response.success = function(response) { //здесь ваш js-код } Вопросы / JS-обработчик на успешное добавление в корзину 1 0 2
11 марта 2016, 12:23 Попробуйте так: <?php switch ($modx->event->name) { case 'OnDocPublished': $createdon = $resource->get('createdon'); $resource->set('editedon', $createdon); $resource->save(); break; } Вопросы / Присвоить к editedon значение createdon 3 +1
07 марта 2016, 19:08 Контексты или ресурсы/категории разные не подходит? Или нужно, чтобы одинаковая ссылка была для обоих городов? Вопросы / Магазин на несколько городов 3 0
07 марта 2016, 18:49 Попробуйте после вызова pdoPage добавить такое: [[+page:is=`1`:else=`<link rel="canonical" href="[[++site_url]][[~[[*id]]]]">`:htmlToHead]] Вопросы / link rel="canonical" в PDOPAGE 5 +1
04 марта 2016, 06:02 Для товаров miniShop2 упрощённый вариант плагина: <?php if ( $modx->event->name != "OnDocFormSave" || $resource->get('class_key') != 'msProduct' || !empty($resource->get('article')) ) return; $resource->set('article', substr($resource->get('alias'),0,2).'-'.$resource->get('parent').$resource->get('id')); $resource->save(); $resource->clearCache(); Готовые решения / Автоматическое создание артикула 14 0 3
04 марта 2016, 05:08 Возьму на себя смелость переписать это дело под стандартное поле Артикул компонента miniShop2. <?php if ($modx->event->name=="OnDocFormSave") // Плагин срабатывает при сохранении ресурса { $id = $resource->get('id'); // Получаем id ресурса $parent = $resource->get('parent'); // Получаем id родительского ресурса $alias = $resource->get('alias'); // Получаем alias ресурса $res = $modx->getObject('msProduct', $id); // Получаем объект товара $tvv = $res->get('article'); // Получаем артикул if (empty($tvv)) // Если артикул пустой то создаем его { $article = substr($alias,0,2).'-'.$parent.$id; // Создаем артикул $res->set('article', $article); // Записываем артикул в соответствующее поле $res->save(); // Сохраняем $res->clearCache(); // Чистим кеш } }Но в этом плагине смущают меня два момента: 1. Зачем снова получаем объект ресурса, если он есть в переменной $resource? По-моему, все функции, типа save() и clearCache() в нём тоже доступны. 2. Плагин выполняет код после сохранения страницы. При сохранении страницы чистится кэш (по умолчанию). И создаётся он только тогда, когда к странице снова обратятся на фронтенде (насколько я знаю). Зачем тогда снова чистить кэш после сохранения поля? Готовые решения / Автоматическое создание артикула 14 0
02 марта 2016, 09:10 Смотрите файл конфига core/config/config.inc.php, насколько мне помнится, там также указывается адрес сайта, но влияет ли он на что-то или нет, я точно не знаю. Точно известно, что в этом же config.inc.php формируется MODX_BASE_URL и MODX_SITE_URL. Ещё после своих изменений удалить всё содержимое папки core/cache/. И должно всё заработать. Вопросы / Перевести сайт на HTTPS 89 0
01 марта 2016, 15:29 Не срабатывает, потому что стоит тип обработки Ресурс, а нужен Динамический ресурс, а в поле Запись выбрать нужно шаблон. Новые дополнения и их версии / [VirtualPage] - Виртуальные страницы. 183 0
01 марта 2016, 13:28 Я туда в первую очередь полез. Но core/components/minishop2/processors/mgr/orders/update.class.php 6 public $beforeSaveEvent = 'msOnBeforeUpdateOrder'; 7 public $afterSaveEvent = 'msOnUpdateOrder';всё что находится по этим словам. Вопросы / Объекты в событиях msOn[Before]UpdateOrder 6 0
29 февраля 2016, 09:19 Плагин я пробовал, когда выставил в качестве обработчика динамический ресурс. На OnPageNotFound вроде своего ничего не висит. Но вариант сменить событие на OnHandleRequest сработал и теперь появляется страница 404. Спасибо за помощь. Новые дополнения и их версии / [VirtualPage] - Виртуальные страницы. 183 0
29 февраля 2016, 08:38 Забыл указать, что в своём случае я использую сниппет в качестве обработчика. Хотя я попробовал всё сделать через плагин, как указано немного выше, и всё равно получаю цикличный редирект. Новые дополнения и их версии / [VirtualPage] - Виртуальные страницы. 183 0
29 февраля 2016, 08:28 $modx->sendErrorPage();Приводит к циклическому редиректу. Нашёл также такой вариант вызова: $modx->sendErrorPage(array('stop' => true));Но также приводит к циклическому редиректу. Как правильно то перебросить на страницу 404? Новые дополнения и их версии / [VirtualPage] - Виртуальные страницы. 183 0
13 февраля 2016, 20:14 Самый простой — 2 вариант. Только не полный код вы скопировали. Создаёте плагин с любым именем. В него вставляете следующий код: switch ( $modx->event->name ) { case 'msOnAddToCart': $tmp = $cart->get(); $tmp[$key]['price'] = $tmp[$key]['price']+($tmp[$key]['price']*18)/100; $cart->set($tmp); break; }Затем самое главное — устанавливаете в соседней вкладке запуск плагина при возникновении события msOnAddToCart. И сохраняете плагин. Готово. Вопросы / Изменение цены товара после добавления в корзину 3 0 1
13 февраля 2016, 14:07 Ещё что-то не подключено. Какой-то плагин к jQuery. Качайте jQuery плагины markItUp и jQuery Form Plugin. Странно, что они автоматически не подключились. Вроде должны идти вместе с компонентом. Вопросы / Не происходит добавление нового тикета в Tickets 24 0
13 февраля 2016, 12:53 Самый простой вариант — добавить в секцию head строку <script src="//code.jquery.com/jquery-1.12.0.min.js"></script>А лучше скачать файл с сайта и подключить локальный файл. Вопросы / Не происходит добавление нового тикета в Tickets 24 0
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 ...
1. В моём можно добавлять любые данные, а не только какие-то определённые.
2. В моём можно изменять цены товаров для различных городов.
3. Планируется сделать определение выбранного города и работу компонента по ссылкам и доменам. То есть, при переходе по ссылке moscow.site.ru или site.ru/moscow/ будет выбран город Москва и выводится данные, добавленные для этого города.
Я не знаю как сделать так, чтобы на тестовом сервере можно было устанавливать мои компоненты.
&$instance — указатель на объект. Соответственно, класс не клонируется, а у объекта просто появляется второе имя. То есть теперь $instance и $reference — это одно и то же. И любые изменения в одной переменной ведут к изменениям в другой.
Но в этом плагине смущают меня два момента:
1. Зачем снова получаем объект ресурса, если он есть в переменной $resource? По-моему, все функции, типа save() и clearCache() в нём тоже доступны.
2. Плагин выполняет код после сохранения страницы. При сохранении страницы чистится кэш (по умолчанию). И создаётся он только тогда, когда к странице снова обратятся на фронтенде (насколько я знаю). Зачем тогда снова чистить кэш после сохранения поля?
всё что находится по этим словам.
На OnPageNotFound вроде своего ничего не висит. Но вариант сменить событие на OnHandleRequest сработал и теперь появляется страница 404.
Спасибо за помощь.
Нашёл также такой вариант вызова:
Но также приводит к циклическому редиректу.
Как правильно то перебросить на страницу 404?
Создаёте плагин с любым именем. В него вставляете следующий код:
Затем самое главное — устанавливаете в соседней вкладке запуск плагина при возникновении события msOnAddToCart. И сохраняете плагин. Готово.
Качайте jQuery плагины markItUp и jQuery Form Plugin.
Странно, что они автоматически не подключились. Вроде должны идти вместе с компонентом.
А лучше скачать файл с сайта и подключить локальный файл.