Даша

Даша

С нами с 10 ноября 2024; Место в рейтинге пользователей: #12582

Переход с неудачного решения по смене контекста И по определению версии (моб/десктоп.) на ModHelpers

Добрый день.
Хотела бы попросить помощи еще раз.

Преамбула
1я проблема-MobileDetect
Установлена стороннаяя библиотека через композер. Шаблоны разбиты на пары для Мобильной и Десктопной версии (разный набор чанков). «Моб»- дефолт (прикреплен к ресурсу), «десктоп» получаем плагином в случае is_Desktop=1.
Такая конструкция вполне себе работает. Но когда я стала добавлять возможность ручного переключения версии по кнопке, у меня ничего не получилось.

2я проблема-BABEL
Уже пройдены варианты отдельной папки, обмусоливания htaccess'a, перебор нескольких версий плагинов для контекста, отключения вообще всех плагинов, попытки написания плагина самостоятельно. Одно время я добилась работы- по крайней мере, могла хотя бы страницу др. контекста открыть. Сейчас идет зацикливание.

ИТОГО
В итоге нашла здесь на сайте, что сейчас проще всего решить это с пом. модуля Сергея Шлокова (modHelpers).
.
Я нашла там не только swich_context для варианта поддиректории, но также сессии и Mob.Det. Поэтому и описала эти проблемы вместе.

Суть вопроса
Мне нужно добиться функционирования смены версии (мобильный/десктоп) и смены языков, через Babel и Mob.Detect. С сохранением результата в сессии, чтобы не определять это для каждой страницы, а также с возможностью выбрать правильный вариант вручную (переключатель), если автоматически определится неверно.
Пожалуйста, посмотрите, правильно ли я представляю саму логику. Пока даже код писать не стала, потому что сильно не уверена насчёт своего видения процесса.
Если всё не так, хотя бы скажите, про какой объект подробнее почитать.


Даша
17 сентября 2025, 19:08
modx.pro
1
474
0

Вручную сделать перевод

Всем добрый день. Встал вопрос мультиязычности сайта.

Начала разбираться с Babel'ем. Поняла, что тест на тестовом сайте не даст объективной картины, и в итоге я просто сломаю прод. К тому же, у меня есть форум на поддомене, я вообще не представляю, как это суммарно с мультидоменами себя поведет. Плюс я не хочу переименовывать сам ru «web», чтоб хотя бы его не сломать.

ВОПРОС. А кто-то когда-то вообще делал ручной перевод?
1. Создать контексты (пока три основных доп. языка; страниц под перевод ок. 30).
2. Сделать перевод в стороннем сервисе. Запихнуть в страницы.
3.Связать
4. Сделать нужные поддомены у регистратора ( я бы не хотела /ru, /en итд. Хотелось бы en/сайт). Может, настроить htaccess.
5. Вставить meta Для нужных языков в тот же чанк (?). Я читала, что делают с «isnot=`1`:then», но это доп. обработка и замедление скорости отображения, имхо.
6. Забрать, наверное, русские дубли из Гугла.
Даша
01 июня 2025, 07:10
modx.pro
1
495
0

PageBlocks. Выводим SEO-карточки

Задача: Вывести в ресурсе SEO-карточки из других ресурсов.
Пример:

Aleksandr Huz
14 февраля 2025, 11:31
modx.pro
3
1 919
+12

Не могу справиться с fullCalendar"ем

Добрый день.

У меня довольно позорный вопрос. Пару месяцев назад перешла на Modx, сейчас разбираюсь с устройством.
С основными модулями справилась (крошки, ~pdoMenu, логин, голосование и тд), а вот календарь даже создать новый не могу. Скажите, пожалуйста, как добавить календарь для использования в параметре &calendars=' '.
(я видела документацию, но там «создайте» и путь «Админка -> приложения -> новый календарь»)

Версия Modx: Revo, 3.05.
Календарь: fullCalendar 2.0.3
Дополнения для админки: Ace.

Вопрос про порядок кастомизации календаря, который я буду выводить. Пока что он выводится в ресурсе, строчкой [[!fullCalendar? &calendars=`1`]]
(на всякий случай- мне не нужен вывод стороннего, типа заполненного в Гугл, нужен собственный)
Даша
10 ноября 2024, 21:01
modx.pro
1
562
0

Простые отзывы на сайте AjaxForm (Formit) + MIGX

Создание отзывов на сайте без использования платных дополнений или громоздких, таких как Tickets.
Нам понадобятся следующие дополнения: Formit, AjaxForm и если хочется защитить форму — recaptchav3.

Данная статья будет полезна новичкам в modx и ни на что не претендует.
Ivan
06 августа 2022, 22:41
modx.pro
9
3 763
+7

PHP Storm вместо консоли для MODX

Брюзжание о заметке-ссылке


Сразу извинюсь за то, что вместо полноценной заметки это скорее заметка-ссылка, но на то есть несколько причин. Первая и главная — это дурацкий редактор заметок на сайте, который отбивает всякое желание писать эти самые заметки. Возможно я брюзжу, но последние годы я привык писать тексты в markdown, где все крайне логично как на этапе написания текста, так и после, когда он уже преобразован в html. Здесь же стоит типограф Jevix, который бесит и заставляет заметку редактировать по 10 минут, пока она не станет нормально выглядеть.

Ну и другая причина кроется в том, что у меня есть свой сайт, где мне хотелось бы публиковать свои заметки и мне конечно же хочется, чтобы их читали именно там. Но дело в том, что на modx.pro нет возможности указать cannonical на оригинальный текст, чтобы поисковые системы правильно понимали, где оригинальное содержимое.

Звучит, будто жалуюсь, но этим хочу подтолкнуть сообщество и ребят, которые стоят за сайтом, обратить внимание на проблему и решить ее. Теперь же давайте к сути. Здесь в заметке будет вступление, а по ссылке уже все подробности. Не обессудьте.

О проблемах запуска скриптов


Итак, заметка о том, как настроить PHP Storm, чтобы не выходя из IDE, писать и запускать скрипты, которые работают с MODX прямо на удаленном сервере. По сути, как заменить дополнение Console нормальным инструментом для работы с кодом, где есть автоматические дополнения, инспекции и вообще вся мощь IDE.
Іван Клімчук
01 ноября 2021, 09:19
modx.pro
1
2 136
+19

Альфа релиз альтернативной админки для MODX

Всем привет!

В продолжение недавней дискуссии публикую то, что удалось сделать за два дня (точнее за 23 часа).



Fi1osof
11 апреля 2021, 14:11
modx.pro
4
2 401
+17

Критическая уязвимость в MODX Revolution

Сильно в детали лезть не буду, просто скажу, что сейчас любой MODX Revo сайт потенциально уязвим. Дыра позволяет выполнить SQL-инъекции, в том числе с созданием на сайте привилегированных пользователей.
Базовые методы противодействия: подмена дефолтных системных папок (особенно connectors) и, главное — смена префикса таблиц. Так как далеко не все это делают, то можно сказать, большинство сайтов в зоне опасности. Кто хочет ощутить это на себе, может в комментах написать ссылку на сайт.

Если кто на уже рабочем сайте хочет префиксы сменить, я описывал метод здесь.

P.S. И еще заповедь: не пускайте никого в админку, даже с самыми минимальными правами. Это практически 100% гарантия взлома при желании.
Fi1osof
05 ноября 2016, 07:50
modx.pro
18
41 816
+30

Formit - вывести таблицу сохраненных форм

У Formit есть возможность сохранять данные в базу с помощью хука FormitSaveForm, это супер. Но может кто просветит, как можно вывести данные сохраненных форм?
В доках этого не нашел… Заранее спасибо.
Евгений
22 ноября 2015, 13:25
modx.pro
4
4 124
0