
Евгений Шеронов
С нами с 20 мая 2015; Место в рейтинге пользователей: #28Вчера в 14:24
это для старой версии, новые версии v5 без jquery
Доработка Fancybox для вывода видео с Rutube 3
11 марта 2025, 15:00
Сам разобрался, добавил скрытое поле input для псевдонима и оттуда подтягивал значение в админку, По поводу кэша тоже разобрался, после сохранения и и...
Как сделать загрузку изображения с фронтенда в tv поле 3
10 марта 2025, 21:48
В Modx есть очереди, можно было не делать отдельную таблицу, а использовать их. Но это имеет смысл только если на создание уходит больше 30 секунд, чт...
Создание товаров через ЛК из контекста web 6
08 марта 2025, 08:06
Пока нет такого функционала, но постараюсь в ближайшее время добавить
Cabinet 13
07 марта 2025, 23:17
Про код. Про «научиться писать код понятный и логичный». Не в тему поста выше, ситуация вчера/сегодня и смех и грех.
Вчера пришел запрос от Заказчика...
Плюсы и минусы Vue и gtsAPI 23
07 марта 2025, 22:34
Уроки по синхронизации с Битрикс24 имеют весьма опосредованное отношение к Modx. Да и основная сложность при работе с Битрикс24 это структура хранения...
Виджеты в админке или как добавить свою кнопку 6
07 марта 2025, 21:49
Абсолютные пути будут поправлены со следующей версией, готовлю обновление в плане управления темой, не только переключалка тем будет…
[EclipseUI] Обновление до версии 1.1.3 Кнопка переключения тем. 8
07 марта 2025, 04:59
Я делал ровно такое через тегирование, компонентом tvSuperSelect.
На другом сайте клиники пытался сделать через taxonomy, но там что-то пошло не та...
Сайт мнгопрофильного медицинского центра на minishop2 2
06 марта 2025, 13:02
Теперь всё понятно.
Спасибо за разъяснение.
[SendIt 2.2.0] Авторизация по любому полю. Генерация username. 10
06 марта 2025, 11:30
Получается, что бы записать в заказы надо указать в input name="region"?
Как правильно раставить переменные для select в order MiniShop2? 4
modx.com/extras/package/pdfparser
Но плагин этот работает когда у документа выбрано:
Тип ресурса: Статичный ресурс
Тип документа: PDF
После этого в поле контент можно будет выбирать файл из файловой системы и при сохранении он вытащит текст из PDF и добавит его в introtext.
А уже любой поисковик, либо SimpleSearch, либо mSearch2, проиндексирует introtext.
При открытии категории 3 и так будут показаны товар 2 и 7, при использовании сниппета msProducts.
А вот если визуально нужно их сгруппировать, то нужно будет в вызове сниппета приджойнить родителей, сделать группировку и если лень возиться с написанием своего сниппета, то в чанке результата можно выставлять плейсхолдер (через Fenom) в виде id родителя и его получение, чтобы не дублировать для двух товаров название подкатегорий/категорий.
Если же заведомо точно в такой категории будет выводиться по одному товару из каждой подкатегории, то можно обойтись «малой кровью» в виде:
Ну а вообще, можно через msProducts сделать returnIds=`1`, обработать своим сниппетом, вытащив категории и в каждой снова вызвать msProducts по соответствующим товарам.
В общем способов полно, самые сложные не стал предлагать) Может кто-то попроще знает.
Там нужно проставить пробелы после открытия фигурных скобок.
Тег ignore в данном случае не спасает.
— тут не мой SeoFilter используется.
Для ajax фильтрации самое простое — приобрести mSearch2.
Но, конечно, можно и самостоятельно написать фильтр и «скрестить» с SeoFilter.
Хотя, напишите мне в поддержку, хочу проверить одну наработку, так как у вас уже есть свёрстанный фильтр.
Формируются все страницы по собранным значениям.
Нужно всего лишь разобраться с подсчётами, активировать настройку — отдавать 404 на пустых настройках.
И в таблицу урл можно даже не заходить.
P.S. Планирую добавить возможность не создавать пустые страницы.
Но в любом случае, нужно будет корректно настраивать подсчёты (то есть делать так, чтобы совпадали условия страницы и правил, корректно прописаны ключи, при множественных ТВ полях не стояла галочка строгий поиск, расширять класс подсчётов при использовании нестандартных полей, таблиц, классов)
Артем, какие ещё проблемы есть?
Над компонентом регулярно работаю и готовлю большое обновление.
Можете и на почту ответить, как будет удобнее.
Но вообще и фильтрацию свою можно написать и скрипты SeoFilter переопределить под свои фильтры и задачи.
Тут даже мне тяжело так сходу ответить, что не так)
Могу предположить, что при добавлении поля не совсем верно указали.
Здесь modx.pro/components/15476 в нижней части топика есть пункт про производителя.
В вашем случае синоним для этого поля должен быть vendors (такой, как прописан в aliases в mFilter2).
И просто указав ссылку сайт было бы гораздо понятнее.
Если не разберётесь — пишите мне в поддержку)
Достаточно просто msProducts.
Инклудить большие превьюшки тоже не нужно, раз в Ajax модалька, пусть там у товара image используется
Если изначально thumb небольшого размера — то можно перегенерировать.
Это всё также пока в планах, так как никто сильно и не хочет эту фишку)
Уже несколько раз вопросы отправлял о том, что важнее в такой реализации.
Даже если это делать — то нет смысла формировать постоянные адреса в таблице пересекая бренды друг с другом. Поэтому ссылки на такие страницы не сформировать.
Потенциально таких страниц очень много и от поисковика наверное нужно будет закрывать.
В общем, всё это для красоты и удобства.
Но в ручную можно делать двойные, тройные страницы из одних значений фильтра.
s9767.h8.modhost.pro/category-cvet-zelenyij-i-korichnevyij/ — пример
Для этого просто в словарь добавлен запрос так:
Прям содержимое страниц вот так просто не вывести, потому что переменные в текстовых шаблонах на лету добавляются для каждой ссылки.
Но самое простое, приспособить sfMenu под это дело, но придётся доработать класс, при этом если страниц много — то скорость загрузки серьёзно увеличится.
Вообще можете написать в тех поддержку мне и уже там пришлите код чанка в turborss.tpl.
Что-нибудь попробуем придумать)
2. В вызове mFilter2 цену прописать как нибудь-так (типо свою таблицу msmy используем):
msmy|price:number
3. Не забыть создать метод getMsmyValues, который будет почти повторять getMsValues и также собирать цену, но ещё подсоединять значения из ТВшки и перемножать цену на эту тв.
Вернуть такой метод должен массив новых обработанных цен вместе с ресурсами.
P.S. и естественно от записи новой цены в плагине на msOnGetProductPrice нужно отказаться.
На событие OnMODXInit не совсем правильно, как мне кажется, лишние запросы будут.
Конечно, отключить плагин не проблема.
А вот крон проверка точно нужна.
На днях поставлю, давно нужно автоматизировать этот процесс себе)
Админский интерфейс или где-нибудь упоминание есть, какой товар ждут больше?)
Как происходит отслеживание поступления товара?
Нужно задать поле, которое будет отслеживаться по onDocFormSave?
Без этого и нельзя было бы сделать привязку правила к нескольким страницам.
Только синтаксис не совсем стандартный, а вот такой:
В тексте тоже было:
Про хлебные крошки с вложенностью имел ввиду, что на странице каталога для правил состоящих из нескольких полей можно постараться сделать)
А вот со страницы товара — большой вопрос.
Тут в принципе можно сделать, но скорее всего нужно будет построить pdoCrumbs до родителя, передав в параметр &to=`[[*parent]]`, используя шаблон последней ссылки таким же, как и у других ссылок.
А потом сделать несколько вызовов sfLink, передавая параметры, чтобы получить необходимую ссылку.
Но вообще да, можно конечно сделать сниппет sfCrumbs (обёртку над pdoCrumbs) для страницы товара, который будет пытаться построить максимальную вложенность SEO-страниц к странице родителю (или переданной категории).
В этом сниппете уже получать все возможные поля ресурса, которые заведены в компонент SeoFilter и в зависимости от приоритета правил — строить вложенные хлебные крошки. Запросов прибавится, но так как это страница одного товара — будет почти не заметно.
Подумаю над этой реализацией — если ещё кому нибудь нужно что-то подобное, пишите обязательно)
Теоретически через плагин лучше сделать возможность влиять (как в miniShop2 можно не дать добавить в корзину) вернув false и сообщение «Вам отключена функция голосования ...».
Вдруг есть какой-то пользователь, который намеренно везде ставит единичку или какой-то другой сценарий использования)
P.S. меня можно не слушать — я пока ещё не пользовался компонентом, но когда-нибудь планирую :)
Моё тоже с ошибками удаляется, правда защита там была вшита ещё до этой статьи)
Один из клиентов заметил.
Помогает принудительное удаление пакета.
Я, правда, не считаю это серьёзной проблемой и пока ещё не начал искать решение.
gist.github.com/sheronov/a64692ced49a4f120ae87fd9795a0299
Сохранил название методов и класса, если хотите — можете у себя в заметке поправить.
Кстати, метод filterTgroup — немного лишний, так как если его нет, будет filterDefault отрабатывать.