Евгений Шеронов

Евгений Шеронов

С нами с 20 мая 2015; Место в рейтинге пользователей: #35

modExtra-cli - разворачиваем modExtra из терминала

Моя последняя заметка на тему скрещивания vue на MODX, она по сути является логическим и исчерпывающим выводом из предыдущих. Да и не гоже мусолить одну и туже тему и засорять фид!
Ближе к делу! Вот как выглядит и работает сli (gif):

Он помогает быстро развернуть modExtra (от товарища Василия), либо в стоковой версии, либо в версии с vue. Подробности вы узнаете под катом.
В общем погнали.

srs
srs
07 января 2019, 00:41
modx.pro
5
554
+14

Прячем ненужные поля товаров minishop'a в зависимости от раздела

При разработке очередного интернет-магазина возникла потребность в большом количестве фильтров по характеристикам товаров. Используя tv или опции тормозов не избежать — нужно расширять родную таблицу ms2_products.

И вроде бы все хорошо, но если в разных разделах нужны разные характеристики, то страница товара в админке превращается в свалку.

Максим Кузнецов
08 января 2018, 01:46
modx.pro
22
1 172
+9

Генерация PDF из формы FormIt + Генерация PDF из любых данных по кнопке (без FormIt) в MODX Revo

На modx.pro уже есть статья от Володи по генерации PDF.
Ниже хочу предложить альтернативный вариант формирования PDF файла из данных форм FormIt с использованием шаблонизатора Fenom и бесплатного компонента PDFresource
Klike
06 ноября 2017, 10:49
modx.pro
22
2 857
+12

Подготавливаем ЛК для "ГдеПосылка"


Это продолжение статей по работе с заказами MS2, в последней статье я обещал, что расскажу как интегрировать сервис «ГдеПосылка» в Minishop2, а пока я жду пока очухается администрация «ГдеПосылка» чтобы дать мне доступ к API подготовим почву для интеграции, что мы будем делать:

  1. Добавим новое поле в заказы minishop2
  2. Сделаем вывод для пользователей их историю заказов без extJS и каких либо дополнений, на чистом pdoTools
  3. Научимся делать leftJoin и select на pdoTools и pdoFetch
  4. Бонусом идут сразу готовые стили для всего этого добра и написанный JS
За стилизацию заказов я брал пример с modstore, я надеюсь никто не обидится, потому что мне кажется что у нового дизайна модстора очень удачное стиливое решение истории заказов

За объяснением кода — под кат, за кодом на GitHub
Pavel Zarubin
19 октября 2017, 11:37
modx.pro
15
3 565
+8

Прокачиваем навык программирования на Fenom

Информация для разработчиков. Сложность средняя.
Практически все разработчики MODX используют тот или иной шаблонизатор. Большинство в рунете сделали свой выбор в пользу Fenom. Благодаря Василию конечно. Этот шаблонизатор достаточно простой и лёгкий. И его функционала хватает для решения практически всех своих задач. В этой статье мы посмотрим на него немного под другим углом и попробуем его возможности расширения.
Сергей Шлоков
25 августа 2017, 07:32
modx.pro
36
2 456
+24

Использование модификаторов Fenom в PHP

Заметка коротенькая, но может быть полезной.

Все знают, что мы можем добавлять собственные модификаторы Fenom на событие pdoToolsOnFenomInit. А как быть, если мы хотим потом использовать этот же модификатор не в чанках и шаблонах, а в своих PHP скриптах?

А очень просто:
$pdoTools = $modx->getService('pdoTools');

$string = 'Some very very long string';
if ($truncate = $pdoTools->getFenom()->getModifier('truncate')) {
	$string = $truncate($string, 10);
}

return $string;
Здесь мы получаем модификатор truncate и обрезаем строку до 10 символов, если она больше.
Василий Наумкин
20 августа 2017, 11:10
modx.pro
13
1 633
+10

mFilter2 и оптимизация скорости на 7k товарах


Всем, кто хоть раз пытался завести mFilter2 на большом кол-ве товаров и хотя-бы 10 опциях в фильтре, известно, что тормозов не избежать. Вот и мне попался на днях сайт, в котором, казалось бы, всего-то 7000 товаров и 10 опций на странице каталога. Однако сниппет фильтра отрабатывал за 3-4 секунды. Переписал на Fenom — стал отрабатывать за 2-3 секунды.
Не годится! Тем более, что у заказчика было требование: «Чтобы сайтом было комфортно пользоваться». Что-ж, взял задачу — надо решать!

Дебаг показал, что проблема в методе mse2FiltersHandler::getMsOptionValues, а именно в запросе (7k товаров!), который выглядит как-то так:
SELECT `product_id`, `key`, `value` FROM `modx_ms2_product_options` AS `msProductOption` 
WHERE (`msProductOption`.`product_id` IN (3394,3408,еще 7 тысяч ID)
AND `msProductOption`.`key` IN ('atr_n1','atr_n6','atr_n5','atr_n12','atr_n43','atr_n46','atr_n29','atr_n11','atr_n44','atr_n2'))
Павел Гвоздь
14 августа 2017, 14:14
modx.pro
30
2 578
+21

Удаление старых версий пакетов

Многие пользователи знают, что MODX хранит кучу старых версий дополнений, чтобы вы могли откатиться на них в любое время.

Но, это требуется крайне редко, а место пакеты занимают. Их можно удалять вручную, но это довольно утомительно, поэтому я набросал несложный консольный скрипт для автоматического удаления.

Скрипт нужно положить в корневую директорию и запустить. Он выберет все установленные версии, кроме самой последней, и корректно удалит их через родной процессор.

Судя по коду этого процессора, никак повредить системе он не может, потому что деинсталляцию самого пакета не делает, а только удаляет файлы версии. Но, в любом случае, использовать на свой страх и риск!
Василий Наумкин
24 марта 2017, 06:35
modx.pro
43
2 344
+24

Количество просмотров страниц+виджет - удобное СЕО

Друзья! прежде всего пишу для себя, что бы не потерять.
Итак выглядит это примерно так



Решение же конечно до боли простое, но оно стало для меня таким полезным, т.к строится все на статистике!
Для кого пригодится? Для тех кто отслеживает позиции своего сайта, если мало просмотров соответственно, либо материал не интересен, либо он далеко в поиске и материал нужно менять, либо доработать. Ну и для тех кому впринцыпе интересно где люди чаще бывают, где возможно стоит разместить рекламу.
Итак приступим.
Сергей
01 февраля 2017, 15:17
modx.pro
24
3 375
+13

Обновление стоимости доставки в админке

Бывает иногда необходимо изменить способ доставки и стоимость доставки у ранее созданного заказа. И хотелось бы чтобы это выглядело так.

Приступим :)
lexikon
27 января 2017, 20:09
modx.pro
17
1 903
+4