Вопросы

Как можно выполнить PHP-скрипт в файле перед всем в MODX?

Приветствую.

Есть файл PHP — получает данные, проверяет, записывает их в БД. Я понимаю, что на всякие операции MODX расходует какое-то время и ресурсы. Хотелось бы сделать так, чтобы все команды в PHP файле выполнялись до всех инициализаций в MODX. Подскажите, пожалуйста, как это можно сделать.

Единственное пока к чему пришел — это в плагине MODX подцепить этот PHP файл как статичный и повесить на событие OnWebPagePrerender. Но прочитав документацию к этому событию, понял, что код будет выполняться из кешированной версии.
weranda
16 февраля 2024, 10:59
modx.pro
272
0

Pdopage без jquery

Всем привет, ну собственно вопрос и есть в заголовке.
Есть мысли как можно использовать pdoTools без jquery, делаю проект где используется только vanilla js. А pdoTools естественно нужен
Помогите советом пожалуйста
vit
vit
16 февраля 2024, 01:38
modx.pro
241
0

Когда клиент оставляет заявку, он получает автоответ, и независимо на каком языке форма(на сайте несколько языков), отправляет ру версию письма

Вот сама форма
{'!AjaxForm' | snippet: [
'snippet'=>'FormIt',
'hooks'=>'email,FormItAutoResponder',
'FormFields'=>'where,name,email,telVal,msg,ASSIGNED_BY_ID,OPPORTINUTY,types,site,sourcebuster',
'form'=>'orderFormTpl',
'submitVar'=>'orderFormSbm',
'emailTpl'=>'orderFormEmail',
'emailTo'=>$_modx->config.robotemail,
'emailFrom'=>$_modx->config.no_email,
'emailReplyTo'=>$_modx->getPlaceholder('email'),
'emailSubject'=>$_modx->config.site_name~': '~ $_modx->resource.pagetitle~'; Заказ услуги (id:'~$_modx->resource.id~')',
'validate'=>'name:required, email:required:email, tel:required, msg:required, firstname:blank',
'validationErrorMessage'=>$_modx->lexicon('mmix.formError'),
'successMessage'=>$_modx->lexicon('mmix.formSuccess'),
'fiarToField'=>$_modx->getPlaceholder('email'),
'fiarTpl'=>'FormItAutoResponderTpl',
'fiarSubject'=>'',
'fiarFromName'=>'Diamant',
'fiarFrom'=>$_modx->config.emailsender,
'frontend_css'=>'',
]}
в комментариях добавлю fiarTpl, так как ограничение
Vladyslav
15 февраля 2024, 19:47
modx.pro
233
0

Человекопонятная навигация не работает ajax загрузка, как исправить?

Сам вопрос
Человек понятная навигация не работает
'pageLinkScheme' => '/[[+pageVarKey]]-[[+page]]'
если убрать
'ajaxMode' => 'default',
то при клике на ссылку переходит как обычно с перезагрузкой, и это работает, но аякс перезагрузка не работает, как исправить?

РЕШЕНИЕ
Делаем копию не минифицированного js файла pdopage по адресу
assets/components/pdotools/js/pdopage.js
Подключаем его в вызове
'frontend_js' => '/assets/сustom_components/pdotools/js/pdopage.custom.js',
Затем заходим в скопированный вами файл, и через такое сочетание
ctrl+f
везде ищем
=(\\d+)
и заменяем его на
-(\\d+)
сохраняем, чистим кэш и радуемся.
Pandemic
15 февраля 2024, 07:30
modx.pro
687
0

Как удалить товары с определенным значением tv

Задача в том, что бы удалить товары в которых tv поле (производитель) имеет определенное значение
я так понимаю это только через консоль можно запустить скрипт, но не пойму как его написать, так как в php не силен
наткнулся на эту заметку
https://modx.pro/help/22639
но как подстроить под свою задачу — не понятно мне
alexandr.skyrda
15 февраля 2024, 03:45
modx.pro
113
0

Как быстрее работает PHP — через MODX в сниппете или просто в файле?

Привет.

В PHP не силен. Если знаете, подскажите. Допустим, надо считывать 10–20 параметров и записывать их в базу данных, а еще надо будет считывать из этой же базы данных небольшую выборку данных. Как будет быстрее и насколько — через сниппет MODX или через обычный PHP-файл?
weranda
14 февраля 2024, 11:54
modx.pro
252
0

Человекопонятная навигация не подставляет в ссылке ключевое слово page, как исправить?

В ссылке на сайте на след страницу имеет такой вид
домен.ру/blog//-1
Нет того ключ слова «page»

{'!pdoPage' | snippet  : [
	'pageVarKey' => 'page',
	'pageLinkScheme' => '/{$pageVarKey}-{$page}'
] ? : 'Ничего не найдено'}
Если вручную добавить это слово, то выглядит нормально, но просто не переходит, просто как клик на кнопку
Pandemic
14 февраля 2024, 09:45
modx.pro
773
0

Вывод конкретной опции в фильтре mFIlter2 наFenom

Добрый день.
Подскажите как сделать вывод конкретной опции в фильтре mFIlter2 наFenom…
Перебрал уже кучу вариантов))
{'my.razmer' | placeholder}
{'razmer' | placeholder}
{'msoption|razmer' | placeholder}
и т.д.

НИ один не прокатил )
Андрей
12 февраля 2024, 11:03
modx.pro
229
0

Как настроить редирект в MODX REVO через .htaccess?

Привет.

Есть проблемка — не получается завести нормально редирект через .htaccess. Подскажите, пожалуйста, что можно сделать, чтобы заработало. Скоро голова лопнет от натуги…

Самый простой код в .htaccess:
RewriteCond %{REMOTE_ADDR} 192.168.1.1
RewriteCond %{REQUEST_URI} !page3
RewriteRule ^ /page3/ [R=301,L]
Что этот код делает:
1. Если нужный IP-адрес. +
2. Если в адресе страницы нет page3
3. Тогда редиректим на страницу page3.

Пробовал код на простых файлах без MODX — все работает. Но MODX, вероятно, вносит свои коррективы в это действо — получается вечный редирект:
/page3/?q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/&q=page3/
weranda
11 февраля 2024, 21:07
modx.pro
194
0

Не работает {'param' | lexicon} в mfilter2

Столкнулся с проблемой, после Ajax фильтрации не подтягиваются значения из словаря, если при первой загрузке все работает, при изменении настроек фильтра на странице получаю только ключи словаря, сами значения не подтягиваются, с чем это может быть связанно?

Я пытаюсь вывести значения из другого компонента не mfilter2 загрузка словаря этого компонента происходит на события OnLoadWebDocument

Какое системное событие надо указать чтобы словарь подтягивался при Ajax загрузке?
Вячеслав Варов
11 февраля 2024, 13:01
modx.pro
234
0