Редирект на поддомен региона
В общем есть сайт с использованием seodomans, домены имеют имена ввиде msk.site.ru, spb.site.ru хотелось бы знать есть ли такое дополнение чтобы посетитель при посщении любого сайта, был переадресован автоматически как например у билайна или после предложение типо «это ваш город?» на поддомен своего региона. Заранее спасибо за ответ
[СДЕЛАЙ САМ] Ajax Регистрация, Авторизация, Сброс пароля, Редактирование профиля
Задача: сделать ajax регистрацию, авторизацию, сброс пароля и редактирование пользователя, используя минимум сторонних компонентов.
ИСПОЛЬЗУЙТЕ КОМПОНЕНТ SENDIT
Почему минимум? Ну часть из тех компонентов, что реализуют подобный функционал, платная (Office, ajaxLogin) и бюджеты есть не всегда на них есть. Некоторые (ajaxLogin) в данный момент не доступны из-за смерти автора. Общий недостаток большинства компонентов это то, что они загружают дополнительные скрипты и стили, что порой приводит к необходимости дополнительно оптимизировать сайт. Компонент Login не работает по ajax. Однако это можно обойти , но runSnippet запустит много всего и не факт что это всё нужно в данный момент. Поэтому предлагаю своё решение.
Нам понадобится:
1. AjaxForm;
2. FormIt;
3. Этот репозиторий.
Порядок действий:
1. Скопировать core/elements/snippets/ajaxidentification.class.php.
2. Создать в админке сниппеты
2.1 AjaxIdentification (код лежит в core/elements/snippets/hooks/AjaxIdentification.php);
2.2 userExists (код лежит в core/elements/snippets/validators/userExists.php);
2.3 userNotExists (код лежит в core/elements/snippets/validators/userNotExists.php;
2.4 ActivateUser (код лежит в core/elements/snippets/ActivateUser.php) // этот можно вызывать прям из файла если хотите.
3. В вывоз AjaxForm в параметр hooks первым значением добавить AjaxIdentification, сюда же добавить параметр method ( register — регистрация, login — авторизация, forgot — восстановление доступа, update — обновление данных).
4. В js на событие af_complete добавить редирект на нужные страницы. Ссылки можно получать
из мета-тегов с именами типа loginSuccessUrl.
Всё. Далее немного потока сознания и пояснений.
ИСПОЛЬЗУЙТЕ КОМПОНЕНТ SENDIT
Почему минимум? Ну часть из тех компонентов, что реализуют подобный функционал, платная (Office, ajaxLogin) и бюджеты есть не всегда на них есть. Некоторые (ajaxLogin) в данный момент не доступны из-за смерти автора. Общий недостаток большинства компонентов это то, что они загружают дополнительные скрипты и стили, что порой приводит к необходимости дополнительно оптимизировать сайт. Компонент Login не работает по ajax. Однако это можно обойти , но runSnippet запустит много всего и не факт что это всё нужно в данный момент. Поэтому предлагаю своё решение.
Нам понадобится:
1. AjaxForm;
2. FormIt;
3. Этот репозиторий.
Порядок действий:
1. Скопировать core/elements/snippets/ajaxidentification.class.php.
2. Создать в админке сниппеты
2.1 AjaxIdentification (код лежит в core/elements/snippets/hooks/AjaxIdentification.php);
2.2 userExists (код лежит в core/elements/snippets/validators/userExists.php);
2.3 userNotExists (код лежит в core/elements/snippets/validators/userNotExists.php;
2.4 ActivateUser (код лежит в core/elements/snippets/ActivateUser.php) // этот можно вызывать прям из файла если хотите.
3. В вывоз AjaxForm в параметр hooks первым значением добавить AjaxIdentification, сюда же добавить параметр method ( register — регистрация, login — авторизация, forgot — восстановление доступа, update — обновление данных).
4. В js на событие af_complete добавить редирект на нужные страницы. Ссылки можно получать
из мета-тегов с именами типа loginSuccessUrl.
Всё. Далее немного потока сознания и пояснений.
Как получить контент страницы перед рендером всех тегов и вызовов?
Как получить страницу с тегами в таком состоянии [[*id]] перед рендером?, чтобы что-то заменить.
Пробовал так, но никак не могу понять как получить весь контент страницы
Пробовал так, но никак не могу понять как получить весь контент страницы
switch ($modx->event->name) {
case 'OnWebPageInit':
$output = get_class_methods($modx);
$modx->log(1, print_r($output), 'HTML');
break;
}
И так
$output = &$modx->resource
&$modx->resource->_output;
Галерея migx, не получается вывести [[+img.1]] на других страницах
Здравствуйте, сделал галерею используя урок
docs.modx.com/current/en/extras/migx/migx.tutorials/fancybox-images-with-seperate-placeholders-in-richtext-content
У главной страницы залил фотографии, все ок. указываю в шаблоне [[+img.1]], [[+img.2]], шаблон для главной, картинки отображаются на главной, а вот если я вставляю [[+img.1]], [[+img.2]] на другие страницы, то картинки не отображаются…
повторно заливать картинки для каждой страницы не вариант… их много очень…
как можно показывать картинки [[+img.1]], [[+img.2]] на любых других страницах?
docs.modx.com/current/en/extras/migx/migx.tutorials/fancybox-images-with-seperate-placeholders-in-richtext-content
У главной страницы залил фотографии, все ок. указываю в шаблоне [[+img.1]], [[+img.2]], шаблон для главной, картинки отображаются на главной, а вот если я вставляю [[+img.1]], [[+img.2]] на другие страницы, то картинки не отображаются…
повторно заливать картинки для каждой страницы не вариант… их много очень…
как можно показывать картинки [[+img.1]], [[+img.2]] на любых других страницах?
Установить каптчу + разобраться с поддержкой хостинга
1 1 500
Установить каптчу на сайте, хостер из-за этого заблокировал работу заявок с сайта (они сейчас не приходят). Написать хостеру, чтобы разблокировали. MODX Revolution.
Watermark через событие "onFileManagerUpload"
Всем привет, вопрос следующий. Как мне через собственный плагин и событие «onFileManagerUpload» получить все загружаемые фото из менеджера, чтобы добавить на них вотермарку с помощью функции PHP imagecopymerge? И каким образом все дело можно дебажить. Вообще без понятия куда можно выводить промежуточный результат плагина.
P.S перешел с wp где можно вар дампить только в путь, а тут такое не канает
P.S перешел с wp где можно вар дампить только в путь, а тут такое не канает
mFilter2 открывать каталог с включенной опцией по умолчанию
Всем привет, возможно ли открывать каталог товаров, с уже отмеченной опцией по умолчанию, пример: prnt.sc/Ch3Dfjgf0fn3
При переходе в каталог, опция марка KIA должна быть уже включена.
По документации похоже это можно реализовать через параметры &where и &leftJoin, но не пойму как.
Вот как вывожу сниппет:
При переходе в каталог, опция марка KIA должна быть уже включена.
По документации похоже это можно реализовать через параметры &where и &leftJoin, но не пойму как.
Вот как вывожу сниппет:
{$_modx->runSnippet('!mFilter2', [
'element' => 'msProducts',
'class' => 'msProduct',
'showEmptyFilters' => 1,
'limit' => 12,
'tplOuter' => 'mFilter2OuterTpl',
'tpls' => 'listProductTpl,gridProductTpl',
'includeTVs' => 'available',
'includeThumbs' => 'medium',
'sortby' => '{ "parent":"ASC","menuindex":"ASC" }',
'suggestionsRadio' => 'msoption|marka,
msoption|model',
'filters' => 'msoption|marka,
msoption|model,
ms|vendor:vendors,
parent:parents',
'aliases' => 'ms|vendor==vendor,
msoption|marka==marka,
msoption|model==model',
'ajaxMode' => 'button',
])}
[СДЕЛАЙ САМ] Конфигуратор страниц с помощью MIGX
Приветствую, дальше будет описание эволюционировавшего метода из моей же более старой заметки, я пытался её обновлять, но получилась каша, поэтому было принято решение написать новую заметку. Кроме того, сама методика сильно спрогрессировала, на мой взгляд, в ней, определенно, стало меньше ручного труда.
Отключить SweetAlert2 на определенных ресурсах
Как можно отключить SweetAlert2 на определенных ресурсах? Попробовал в начало плагина сделать так:
if($modx->resource->id == 845 OR $modx->resource->id == 846 OR $modx->resource->id == 847) return;
не помогло