Евгений Шеронов
С нами с 20 мая 2015; Место в рейтинге пользователей: #315 часов назад
вот этот сниппет
require_once MODX_CORE_PATH . 'model/modx/modx.class.php';
$modx = new modX();
$modx->initialize('web');
$modx->getService...
Проблемы с отправкой писем статус заказа из minishop2 5
Вчера в 20:15
Хотел проверить еще раз, теперь все работает. Спасибо.
MiniShop3 1.0.0-alpha.4 — Большое обновление админки 24
05 января 2026, 14:53
Тоже не понял зачем эти сложности, всегда этот скрипт юзал.
Почему в новых версиях MODX не работает сброс пароля через MD5 и как восстановить доступ в manager 4
30 декабря 2025, 22:52
Почему-то прочитал это голосом комментатора из Дома 2… Только про Minishop 3!) Спасибо всем за вклад в развитие и, достаточно неплохие итоги года)
Итоги 2025 года на MODX.pro 3
27 декабря 2025, 16:41
MODX, как и любой основанный на PHP фреймворк пишет 500 ошибки в error_log. Никаких специальных настроек в нем нет. Все зависит от настроек хостинга\с...
Отладка 500 ошибки MODX 1
26 декабря 2025, 18:00
ух ты крутяк!
resComments — многоуровневые комментарии с пагинацией для ресурсов MODX3 2
24 декабря 2025, 22:11
Есть поле mail_smtp_user введи туда логин, если не сработает введи email. И не забудь в emailsender корректный email прописать.
Modx 2.8.8 еще подходит отправки почты через smtp.yandex.ru? 3
24 декабря 2025, 00:23
Нет, лайки всегда были привязаны ко времени публикации, чтобы лайками старых постов рейтинг не накручивали.
MiniShop3 - новый релиз. 1.0.0-alpha.2 15
На демке страница с дешевыми товарами s9767.h8.modhost.pro/razdel/nedorogie
Правда не очень хорошая реализация вышла именно по недорогим товарам. Подумаю как ещё решить, но в целом в новом обновлении открылась возможность создавать страницы для нескольких значений одного поля.
Документацию попозже дополню, но сейчас примерно опишу как повторить.
Когда цена в виде слайдера — всегда передаётся два значения в url через запятую. По сути диапазон.
Условия при добавлении цены в правило для таких страниц не нужно использовать. Но для поля «Цена» нужно добавить галочку: «Поле типа „Слайдер“ (number фильтры)»
И после сохранения для подобных полей не будут собираться значения, так как их очень много может быть и словарь будет засоряться)
Для таких страниц нужно будет в ручную добавить в словарь запрос «100,500» и написать в значении «недорогие», выбрав поле «Цена». (100 — это у меня минимальная цена в разделе, а 500 — просто ограничение для недорогих). Синоним — автоматически запишется.
И при создании правила с ценой будет сформирована одна страница в таблице URL.
Из минусов такого метода, которые ещё не решил — то что нужно знать минимальную стоимость товара на странице.
С копирование правил должно быть всё понятно)
Наверно на демке мне стоит раскрыть все возможности компонента)
Отвечу на вопрос про сниппет: Нет, этот сниппет будет для других целей, а ля pdoMenu)
Но то, что показано на видео можно уже и сейчас сделать.
Ради общего интереса сделал на демке похожий функционал, как на видео s9767.h8.modhost.pro/razdel/
Работает с учётом относительности для цвета и категории.
Всего лишь пришлось подкорректировать чанк. Решение не самое изящное, но чтобы в чанках mFilter2 были параметры для ссылок, их учёт относительно от правил, переданных параметров и условий — придётся не слабо переделать исходники mSearch2, что не позволительно)
Конечно можно и копию mFilter2 переделать под себя и классы переопределить, но это уже совсем не стандартная доработка)
Что радует при моём подходе — скорость и количество запросов как-то особо не изменились.
Сам код одного чанка: (во втором по сути меняется порядок ссылки и get-параметр)
Но есть и минусы — чанки в фильтре не обновляются через ajax.
И убирать ссылки на лету при label disabled можно только пробегаясь своим JS скриптом)
Также нужно изменять ссылку при убирании одного get-параметра.
Вывод: такое решение если и может жить, то только для ссылок «первого уровня»:
И естественно определяя для каждого поля в mFilter2 свой чанк row.
P.S. Возможно поисковикам хватит и такой грубой реализации но пользователей может запутать.
И по обновлениям — первое со дня на день. Второе скорее всего на следующей неделе.
Всё таки о технической части решения рассказываю, а не о том, как делать сайт по керамике)
Компонент же не будет создавать структуру сайта, а представляет из себя удобный инструмент для связи коллекций товаров с производителем, минуя неудобства такой фильтрации.
P.S. Вам ещё не встречались одинаковые названий коллекций у разных производителей? :)
Просто моё решение универсально и будет подходить для множества областей, где одинаковые названий коллекций точно есть)
Повторюсь, коллекция привязывается к производителю. И уже в товаре выбор коллекции.
Коллекция — такой же объект, как и производитель в miniShop2, но со своими полями. Ресурсы для них не используются, выводить можно и через виртуальные страницы.
С таким подходом можно получать такие страницы:
Все товары из «Коллекция1»; Бордюры из «Коллекция1» и «Коллекция2»;
А на странице товара: «Декоры из этой же коллекции», «Плинтуса» и т.д.
И это гарантирует нормальное расположение товара в своей категории/подкатегории. Кто-то сможет искать только бордюры — и его не интересует что это за коллекция. Главное-чтобы подошла к текущей плитке.
Возможно, мы говорим об одной и той же структуре разными словами) Но у меня такого не будет:
В один прекрасный момент кто-то решит поправить заголовок и всё навернётся)
Если дело ждёт пару дней — подождите) компонент как раз разрабатывался для магазина сантехники, и должен подойти для Вас)
Но в вашем случае делал бы так: Категория: Плитка. Подкатегории: Напольная, Настенная и т.д.
У других производителей же тоже есть такие категории. Поэтому именно категорию не нужно привязывать к к коллекции.
Ещё будет 2 обновления до повышения цены:
В первом ближайшем обновлении:
1) Правка с созданием страниц по числовым полям (в виде слайдера которые);
2) Копирование правил;
3) Шаблон для текстового названия url-адреса. (чтобы ещё и текст правильный выводить в меню).
Во втором:
1) Сниппет для формирования меню (по своим параметрам);
2) Сниппет для карты сайта;
3) Возможно текстовый шаблон для добавления ссылки в хлебные крошки;
Можете ещё что-то предлагать, что могло бы пригодится всем)
Да, с числовыми полями я что-то намудрил :)
Постараюсь сегодня-завтра поправить, чтобы можно было создавать страницы: недорогие товары или премиальные товары)
И по копированию правила — скорее всего да, тоже сделаю. Думал об этом)
Но уже сейчас можно открыть два правила одновременно и расположить рядом на экране, копируя тексты друг-друга.
Начал совсем давно, месяца 3 назад.
Именно по часам не замерял, так как делал в свободное от проектов время.
В Modstore попала 14-ая версия компонента)
Только узнал, что phpStorm отслеживает время и активировав настройку увидел ужасающие цифры)
Ровно 7 дней x 24 часа = 168 часов я пробыл в IDE, переписывая по несколько раз логику)
modstore.pro/packages/ecommerce/seofilter
У меня почти на 50к товаров кэш раздувался до ~8гб и память на хостинге постоянно заканчивалась, нарушая работу сайта. Пришлось полностью отключить кэш на товарах.
Дополнение опубликовано modstore.pro/packages/ecommerce/seofilter
Документация на github ещё не принята, но копия находится здесь: s9767.h8.modhost.pro/dokumentacziya/
Компонент уже отправлен на проверку, но на акционный период не попадает.
1. Цена для первых покупателей будет 990 рублей, считайте что -30% от цены 1490, которая будет после некоторых обновлений :) Про обновления напишу, как компонент появится в магазине, дополнив тему или в новом топике.
2. Не знаю, про какой пример говорите, здесь я ничего ещё не выкладывал)
Само по себе дополнение при работе не отнимает скорость и даже не прибавляет запросы на странице с фильтром, как минимум после первой генерации страницы в кэш. Но и при первом запуске не замечал.
Увеличение количества запросов есть, когда уже срабатывает плагин на подобный url: "/razdel/sinij/planshetyi".
Скорость при этом как-то значительно не отличается. Всё в пределах погрешности ~0.01 сек.
В личку вам отправлю тестовые сайты, где стоят последние версии. А на днях и демку нормальную сделаю)
Отдельного кэширования в дополнении нет, это всё таки динамические данные, которые постоянно могут обновляться.
А потом долго думал над названием и лучше варианта не придумал.
Компонент и сейчас может работать без привязки к mFilter2, также соберёт словарь, сможет формировать ссылки на страницы и передавать им GET/REQUEST-параметры с выставлением плейсхолдеров.
Скорее всего даже и без miniShop2 будет работать на полях ресурса и ТВ-полях, проверю после релиза и укажу в документации)
По умолчанию, при множественном выборе нескольких значений одного фильтра, подтягиваются обычные поля страницы, и адрес будет состоять из get параметров. (/telefony?brand=1,2&color=Синий)
Но я ещё не упомянул в заметке про базовые правила. Если в окошке редактирования правила, связанного только с полем «Цвет», поставить галочку "Базовое правило", то в таком случае получится адрес "/telefony/sinie?brand=1,2" и все текста, будут связаны с синими телефонами.
После релиза планирую добавить условия к полям при создании правила, где можно будет добавить одно и то же поле, указывая какие значения из него брать: все, или только некоторые, ну и ничто не помешает добавить совсем другое поле.
Например, если взять минимум, что будет выбрано 2 производителя и 1 цвет, то таких возможных страниц, при 10 значениях в обоих группах, будет 900(10*(10-1)*10), а вероятность их использования, и тем более релевантности поисковым запросам сильно падает. Всё таки мало-кто ищет подобное:
Синие телефоны Samsung и Apple (/telefony/sinie/samsung-i-apple)
Красные телефоны Nokia и HTC. (/telefony/krasnye/nokia-i-htc)
Хотя Яндекс и отдаёт подобные результаты, но в wordstat таких запросов нет :)
Контент-менеджер или SEO-шник просто замучается составлять правила и шаблоны на такие страницы.
Поэтому такая настройка будет лишь нужна по мере-необходимости, и чаще всего для двух значений одного поля, без использования второго поля)
Но прям в первом релизе не планировал, но если времени хватит, то добавлю)
В основном, решая такие задачи:
Допустим есть категория ванны, где фильтры по материалу, по бренду, по размеру, форме и т.д.
По умолчанию в этой категории, можно будет показать {n} самых популярных ссылок, таких как:
— Акриловые ванны
— Ванны Rocca
— Ванны 170x70.
При выборе акриловых ванн (либо в фильтре, либо при переходе по ссылке) на месте этих ссылок появятся другие, уточняющие популярность непосредственно в акриловых ваннах:
— Акриловые ванны Riho;
— Прямоугольные акриловые ванны;
При этом, скорее всего можно будет задавать шаблон для генерации названия ссылки, изменять порядок, проставлять картинки, например)
А так и у меня всё работает на Fenom, и по скорости от количества товаров вообще никак не должно зависеть, лишь только добавляя единожды все слова в справочник. Обычно отрабатывает быстрее, чем mSearch2 возвращает результаты.
Из нового у вас я заметил группировку всех ссылок к текущей странице, тоже можно сделаь, для этого уже всё предусмотрено, кому-то точно будет полезным. Спасибо за идею!