Алексей Шумаев

Алексей Шумаев

С нами с 30 ноября -0001; Место в рейтинге пользователей: #24
Алексей Шумаев
04 октября 2018, 10:43
+1
В тексте 2 ссылки на демо-сайт: s11494.h9.modhost.pro
Алексей Шумаев
04 октября 2018, 02:40
+1
Обновил mvtForms. Помимо прочего — добавлена фильтрация тегов.
Алексей Шумаев
03 октября 2018, 17:42
+1
Отлично!
Алексей Шумаев
03 октября 2018, 17:39
0
Друзья, а фото/видео будет?
Алексей Шумаев
02 октября 2018, 13:53
+1
По-моему, это не выход. Фильтрация должна быть глобальной на уровне системы, иначе угроза будет постоянной.
Алексей Шумаев
02 октября 2018, 13:48
+1
Народ, правильно ли я понимаю: иного выхода у пользователей, как ждать новой версии modx с фиксом — просто нет. Ну или массово ставим фильтрацию в плагине на всех проектах.
Учитывая, что не все, у кого сайт на modx читают форум и не все смогут быстренько сделать плагин — ждём новую волну?
Алексей Шумаев
30 сентября 2018, 20:26
+4
Спасибо организаторам, спикерам и участникам!
Мероприятие прошло на уровне + весело; жаль в моём случае до полуночи нельзя было задержаться ))
Алексей Шумаев
28 сентября 2018, 13:46
0
Судя по количеству повторения одного и того же вопроса в сообществе, пора в документацию добавлять…
Тут набросок универсального решения: modx.pro/help/16436#comment-102084
Алексей Шумаев
27 сентября 2018, 15:29
0
У меня есть класс-заготовка, настраиваю под требования конкретного проекта. Как-то нет потребности в полностью автоматизированном решении — оно будет громоздким и всё равно требовать подстройки.
Конечно, у товаров должно быть унифицированное поле — артикул или id какой-то внешней БД-источника. Какой id будет у ресурса в системе при этом значения не имеет.

Попробуйте сделать так: загрузите на новый сайт товары из сторонней БД и артикулом укажите id товара в сторонней БД. Или расширьте таблицу msProduct (или modResource — по желанию) и пишите этот id в новое поле (например extID). Синхронизация будет идти по выбранному полю.
Алексей Шумаев
25 сентября 2018, 08:38
0
У меня есть подобный случай — одна база на несколько сайтов. Все сайты синхронизируют свои БД с общей базой товаров, но при этом независимы.
Если БД с таблицей товаров доступна извне, то обращаетесь к ней напрямую, если нет — выгружайте на ftp например в csv и забирайте данные оттуда — это тоже без проблем работает.
Алексей Шумаев
25 сентября 2018, 08:34
0
В этом случае, я бы просто настроил синхронизацию товаров в вашем магазине с этой БД и всё.
Ничего сложного тут нет, и весь функционал MS2 также будет в вашим услугам.
Алексей Шумаев
24 сентября 2018, 00:16
+1
Отлично.
Нашёл маленькую опечатку: prntscr.com/kxu486
Алексей Шумаев
24 сентября 2018, 00:13
2
+2
Простой рецепт:
1. Выносите в ClientConfig поля для внешних скриптов (метрика, ets). например: ExtJSHead, ExtJSBody, ExtJSFooter
2. Выводите эти поля, где надо через сниппет:
{'extScripts' | snippet : ['input'=>'head']}
Сниппет:
if(!isset($input)) return;
$ext = array(
    'head' => $modx->getOption('ExtJSHead')
    ,'body' => $modx->getOption('ExtJSBody')
    ,'footer' => $modx->getOption('ExtJSFooter')
);

$search  = array('{', '}');
$replace = array('{ ', ' }');
$out = str_replace($search,$replace,$ext[$input]);

return $out;
Алексей Шумаев
21 сентября 2018, 17:36
0
Официально, значит, не будет… Ждём пиратку на торрентах )
Алексей Шумаев
16 сентября 2018, 22:44
0
Если я верно понял вопрос…
Переменные передаются.
Например определяем переменную {var $docid = $_modx->resource.id} в шаблоне, и эта переменная $docid доступна в расширении.
Если в расширении будет вставка файлового элемента, например:
{include 'file:templates/page.tpl'}, то $docid будет доступна и там.
Удобно, однако.
Алексей Шумаев
14 сентября 2018, 11:31
0
Спасибо! Весьма полезно.
Алексей Шумаев
13 сентября 2018, 11:17
0
Что было-то? Может кому ещё пригодиться )
Алексей Шумаев
13 сентября 2018, 11:15
+1
Если сайт чужой — проверьте:
1. настройку ms2_services (если есть, от версии зависит. в старых не помню как было организовано) — указаны ли там посторонние классы для корзины
2. директорию core/components/minishop2/custom/cart — тут может быть кастомный класс, где переопределен метод добавления в корзину. Хотя он может быть где угодно )
Алексей Шумаев
13 сентября 2018, 10:56
0
Ну я бы посмотрел плагины сначала.
Проще всего зайти в phpMyAdmin, найти таблицу префикс_site_plugin_events и поискать в ней по полю event значения: msOnBeforeAddToCart, msOnAddToCart (на всякий случай). Если что найдётся — смотреть плагин с id, который будет в поле pluginid.
Если нет — тогда не знаю — надо в сайте копаться…
Смотрите где округление начинается: в карточке или только в корзине или после оформления заказа.