Всего 125 966 комментариев

Артур Шевченко
08 марта 2022, 21:29
+1
Самый простой способ, наверно, где-то в админке сделать коэффициент и чтобы все существующие цены на него умножались.
Да. И добавь к этому задание в планировщике и сниппет который будет цены менять.
Николай Савин
08 марта 2022, 18:36
0
За заполнение тех или иных таблиц отвечают резолверы. Пишите новый резолвер. Добавлять его никуда не нужно. Они запускаются все подряд при сканировании каталога. Внутри резолвера пишите такой же код заполнения данными, как вы бы писали в админке MODX в консоли.
Для примера таких резолверов можете посмотреть исходный код популярных компонентов.
Stepan
08 марта 2022, 16:00
0
А как заполнить таблицу сразу во время установки дополнения?
Prihod
08 марта 2022, 15:53
0
Кнопку для сканирования в новую версию добавлю. Сейчас из консоли modx можно просто выполнить код

$staticelementslive = $modx->getService('staticelementslive', 'StaticElementsLive');
$staticelementslive->runProcessor('web/element/scan');
А вообще изначально задумка все это дело подружить с gulp в реальном времени создавать и перемещать элементы
Stepan
08 марта 2022, 15:32
0
Народ а как заполнить создаваемую страницу?
так называемый постинстал
Алексей Смирнов
08 марта 2022, 14:53
0
В тини редакторе есть возможность выбирать и чанк для вставки. В CKEditor с этим пока проблемно.
Алексей Смирнов
08 марта 2022, 14:29
0
Вы можете логику для одной фотки реализовать в этом же чанке. Особенно просто это сделать, если включен режим с феном на страницах. С феном это сделать проще всего.
Артур Шевченко
08 марта 2022, 13:01
0
Тогда как альтернативу могу предложить написать плагин на это событие и в нём обрабатывать тэги.
Валерий
08 марта 2022, 12:37
0
Это понятно, но у меня задача сделать так, чтобы ссылка, отображаемая в браузере была вида:
<a href="[[~145]][[+alias]]">[[+tag]]</a>
Но, при этом, компонент корректно обрабатывал вывод тега.
Делал на этом примере itchief.ru/modx/tagger#comment-1361
Артур Шевченко
08 марта 2022, 12:13
0
Я в написании правил для.htaccess не очень силён, но чтобы получить url вида vyvod-tegov/?tag=$1 редирект писать необязательно, можно сразу написать
<a href="[[~145]]?tag=[[+alias]]">[[+tag]]</a>
Николай Савин
08 марта 2022, 09:42
+2
Это уже сделано.
Илья Уткин
08 марта 2022, 05:10
+1
  • mscarthandler.class.php
  • msdeliveryhandler.class.php

  • msorderhandler.class.php
  • mspaymenthandler.class.php
В новой версии для таких файлов создан отдельный каталог.
В качестве идеи, как упростить обновление существующих магазинов. Где-то я такое видел, мне кажется логичным:

Можно добавить в новую версию файлы по старым путям, но в коде файлов делать просто include правильных файлов. И в комментариях пометить эти файлы как deprecated. А потом, в версии 3.1 или 3.2 убалить эти файлы. В итоге если человек обновлялся с версии 2.х до 3.0, у него файлы будут существовать и ничего не сломается, а на новых установках, начиная с 3.1 файлов deprecated не будет.
Артур Шевченко
07 марта 2022, 20:43
0
Вынес в отдельный метод. Ошибку самого запроса выносить не стал, потому как пользователь всё равно повлиять не её исправление не может.
Николай Савин
07 марта 2022, 20:06
0
Да, действительно Конфуз вышел. Поправил.
Ссылки Российские. Не уверен, что я теперь с них смогу что-то получить. Как и не каждый сможет собственно их использовать.
Если Кто хочет задонатить лично мне на Казахстанские реквизиты — дайте знать.
Андрей Шевяков
07 марта 2022, 19:09
0
Спасибо огромное! Куда задонатить на дальнейшее развитие?
Тут нет ссылок(((
Отправить донат с карты
Отправить донат на Яндекс. Деньги
Отправить донат на Qiwi
Дима Сайт old см. профиль
07 марта 2022, 17:24
0
1. Класс
2. Лучше уж пусть дубликат создаёт чем по названию сверяет. Было бы неприятно потерять код в случае нестыковок.

Вот бы ещё решение для однократного сканирования.
У меня вот разработка всегда на тестовой копии, и там я включу автосканирование. Сделал изменения, залил в гит.

А вот уже потом на продакшене сделал pull и в админке нажал бы кнопочку (ну и привязал ресурсы к новым шаблонам, если надо)

Если компонент не создает пункт меню с кнопочкой «просканировать», то может подскажешь быстрый способ создать её руками? Нет ли коннектора который можно пнуть чтобы он там провернул шестеренки под капотом ?)))

P.S. возможно мне стоило бы использовать gitify и он такое умеет, но я не использую(
Николай Савин
07 марта 2022, 16:49
0
Скорее всего ты чего-то не знаешь.
Смотри jquery ajax() подписывает свои запросы заголовком X-Requested-With со значением XMLHttpRequest

И многие компоненты, в том числе упомянутый modhelpers просто проверяют наличие заголовка
if (empty($_SERVER['HTTP_X_REQUESTED_WITH']) || $_SERVER['HTTP_X_REQUESTED_WITH'] != 'XMLHttpRequest') {return;}
Выходит Чтобы все серверные скрипты сработали — достаточно передать этот заголовок

В конкретно этом ajaxForm за авторством Артура сделано вот так
request.setRequestHeader("X-Requested-With", "XMLHttpRequest");
Fetch работает точно так же. Нужно передать заголовок. Просто синтаксис чуть другой будет
const headers = {'X-Requested-With':XMLHttpRequest}
Prihod
07 марта 2022, 16:39
0
1. Да
2. Ничего не будет происходить так как если элемент с таким названием есть то он игнорируется, возможно в новую версию добавлю опцию которая позволит для статических элементов проверять наличие файлов в указанном пути и если его нет но есть файл с таким названием где то в другом месте то использовать его