Восьмибитный путь MODx
или
Сайт с нуля MODx revo, часть 1:
установка системы и первичная настройка.
Ознакомление с MODx revolution
MODx revolution - это вторая ветка развития проекта MODx. Не очень хочется подробно расписывать, чем новая отличается от первой ветки ( evolution ), могу только наверняка заявить что evo проигрывает revo, просто по полной программе и на плаву первая ветка держится только из-за более быстрой системы кэширования на малонагруженных проектах и более простого api.
MODx revo очень конкретно упростили жизнь разработчику сайта и поднятие модулей для системы, отбросив такие вопросы как разработка интерфейсов и большинство проверок входных/выходных данных интегрировав в себя ExtJS и xPDO. Большинство операций по обработке данных типа сохранить/удалить/обновить, уже поддерживаются в самом движке и при разработке модуля, остается просто добавить пару строчек если потребуется.
Рекомендуемый хостинг для MODx revo
Вот уже длительное время, я разрабатываю сайты с modx revolution, и могу посоветовать два самых чотких, отлично себя зарекомендовавших хостинга в рунете, на которые я и сам: поселил уже более 100 сайтов и продолжаю размещать там проекты. У обоих замечательная техническая поддержка, партнерские программы с плюшками, самоваром, блинами и высокая бесперебойная скорость работы.
Так же можно потестировать систему на локалке, для этого качаем OpenServer. Подходящие настройки:
- HTTP: Apache-PHP-7.2(-x64)
- PHP: PHP-7.2(-x64)
- MySQL: MySQL-5.6
На OpenServer, возможна ошибка, когда при редактировании текстовых файлов появляется ошибка в логе modx: /core/model/modx/modx.class.php : 2490) Could not set the locale. Please check if the locale ru_RU.UTF-8 exists on your system, и при открытии файла - пустой экран, а в исходном коде отсутствует переменная record.
MODx.load({ xtype: "modx-page-file-edit" ,file: "config.core.php" ,record: ,canSave: 1 });
В этом случае устанавливаем ключ locale в «Системных настройках» на english. После переноса сайта на хостинг подходящая локаль будет: ru_RU.UTF-8.
Установка MODx revo
Первым делом, необходимо скачать последнюю версию modx revolution с загрузочной страницы. Качай Advanced Distribution, для кастомной настройки. Очень, кстати, важно понимать: что система мало ориентирована на русскоязычного разработчика, и в процессе - придется прошарить Мрачную тучу, с большой буквы, в непогоду (без зонта), забугорных сайтов для поиска документации или решения возникающих вопросов. Так что, если с английским не в ладах и не очень хочется его изучать, я бы посоветовал: пойти поискать грааль в другую сферу функционирования энергии, ну или сразу далеко-далеко в сибирские леса по грибы.
Содержимое архива (там лежат две папки core и setup), необходимо положить в корень сайта, или в то место, где предполагается будет подлагивать сайт в дальнейшем. Должно получиться так, чтобы возможно было зайти в setup, вот так: site.ru/setup/. Заходи в установщик, там ничего сверхъестественного нет, выбирай русский язык - Далее, Новая установка, ничего не меняем - Далее. Задаем параметры подключения к базе данных, кодировка подключения конечно же utf8, сопоставление utf8mb4_general_ci (забудь, вообще, обо всех других кодировках - раз и навсегда, разве ты не можешь?). Указываем данные администратора. Далее, и откроются настройки установки контекста, здесь я порекомендую поменять данные: Параметры контекста административной части сайта (интерфейс администратора сайта). По умолчанию админка сайта в modx открывается по адресу manager, но, например, на некоторых хостингах по этому адресу расположена панель управления ISP manager, что, может организовать свинскую суматоху со входом и выходом в админ-панель. В моем пути, я буду заходить в админку по адресу: site.ru/megaadmin/, тебе же - советую придумать какое-то свое, уникальное, название админки, дабы враги-хакеры не могли ее прощупать простейшим подбором букв, ибо НЕХУЙ.

Жми Далее. Смотрим отчет об установке, если ошибок нет, жмешь Установить и Далее. Появится кнопка входа в админ-панель и галочка, при активности которой удалится каталог /setup/. После всех прелюдий и лобзаний - попадаешь, в админку. Радоваться особо нечему: еще придется изрядно попыхтеть и поохать, чтобы сайт заработал.
Дай отпор ШТОпором
ошибкам конфигурации

Данная ошибка решается как и рекомендуется: в папке /core/ переименовав уже имеющийся там файл в .htaccess. Иногда требуется удалить файл /core/docs/changelog.txt.

Первичная настройка MODx revolution
Есть несколько шагов, которые необходимо выполнять, как если бы всю руку обоссать, при каждой установке modx revo: Первым делом мы идем в Системные настройки.

Откроется здоровенная таблица со всякой неопознанной дичью, тут - тебя, сейчас интересует фильтр по разделу:

Пойдем по порядку: отфильтруй данные по запросу «Дружественные URL» ( ЧПУ если хочешь ), сейчас настрой систему так, дабы при взаимодействии с сайтом пользователь ходил по страницам таким образом: чтобы их урлы были понятны и просты не site.ru/index.php?id=12312312, а site.ru/privet-mir.html, дело ведь не только в пользователях, которым обычно плевать, что написано в адресной строке, основная тут задача — это понравиться и пошалить в топ выдачи поисковым системам, которые - лучше ранжируют всякие ненужные сайты по «человеко понятным ссылкам». Итак, меняем:
- Автоматически генерировать псевдоним ( automatic_alias ) → Да, это для того чтобы при создании нового документа алиас к нему генерировался из заголовка.
- Транслитерация псевдонимов ( friendly_alias_translit ) → russian, для того чтобы генерировались алиасы транслитом.
- Использовать дружественные URL ( friendly_urls ) → Да
- Строгий режим дружественных URL ( friendly_urls_strict ) → Да
- Использовать вложенные урлы ( use_alias_path ) → Да, ссылки будут типа site.ru/blog/hello.html
Далее отфильтруй данные по запросу «Сайт», меняй:
- Публиковать по умолчанию ( publish_default ) → Да, чтобы при создании новых страниц сайта галочка «Опубликован» уже крепко стояла.
Отфильтруй по запросу «Система и сервер», и меняй:
- Устаревшие функции в журнале ошибок ( log_deprecated ) → Нет, чтобы убрать лишние и никому не нужные ошибки из лога.
Теперь для того чтобы заработали ссылки ЧПУ необходимо на фтп переставить точку в файле .htaccess вперед. Так же заходи в него и откомментируй строки, замени на свой сайт вместо site.ru:
# Rewrite www.domain.com → domain.com -- used with SEO Strict URLs plugin RewriteCond %{HTTP_HOST} . RewriteCond %{HTTP_HOST} !^site\.ru [NC] RewriteRule (.*) http://site.ru/$1 [R=301,L]
Этот момент, тоже делается для поисковых систем, дабы они не склеивали сайт с www и без. И последний штрих для ссылок ЧПУ, заходим в Приложения → Установщик.

Нажимай кнопочку «Загрузить дополнения» и в поиске вбивай «translit», закачивай и после чего устанавливай. Этот пакет нужен для работы «Транслитерация псевдонимов ( friendly_alias_translit ) → russian», что мы делали ранее.
Транслит, - избавит от непредвиденных ошибок в работе сайта и сервера.
Вот первичная настройка сделана, эти действия монотонно производятся при создании нового сайта на modx revolution. Просветленные программисты сохраняют себе бекап такой установки, чтобы не возится с настройками каждый раз, но не торопись для бекапа рановато. Хочу так же отметить некоторые настройки, которые в последствии окажутся полезными:
Системные настройки → core → Сайт- Страница ошибки 404 ( error_page ) - здесь вбивается id документа, который является той самой страницей.
- Статус сайта ( site_status ) - имеется ввиду включить/выключить сайт.
- Название сайта ( site_name ) - можешь поменять.
Здесь можно, если необходимо, а может и совсем не нужно, отредактировать тип HTML и вместо .html поставить слэш /. Тогда страницы сайта будут заканчиваться как и указано.
Содержание:
- часть 1: установка системы и первичная настройка.
- часть 2: подготовка к работе и установка шаблона верстки на движок
- часть 3: SEO-friendly, как сделать удобным внесение SEO настроек
- часть 4: восхитительная настройка шаблона и страниц сайта. Деградация
- часть 5: программирование не стандартного функционала сайта или MIGX во всем его дьявольском великолепии
- часть 6: Сказочная настройка доступов и классическая мультиязычность