За обновлениями можно следить в telegram-канале https://t.me/quasiart

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

Приложения

Ace

Редактор кода с подсветкой синтаксиса и автодополнением. Я его использую для редактирования плагинов, сниппетов, чанков и шаблонов.

CKEditor

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

ClientConfig

ClientConfig служит для организации удобного редактирования таких настроек сайта, которые меняет обычно контент-менеджер: название сайта, номера телефонов, адреса электронной почты и прочие контактные данные. 

Collections

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

fileTranslit

Данный плагин переименовывает файлы во время загрузки таким образом, чтобы не возникало проблем с их дальнейшим использованием. Он транслитерирует им файла («картинка.jpg» становится «kartinka.jpg»), а также удаляет ненужные символы. 

Gallery

Служит для организации галереи.

If

Незаменимая вещь для гибкого контроля над выводом. 

MIGX

pdoTools

Набор дополнений.

  • pdoResources — перечисление ресурсов
  • pdoMenu — альтернатива Wayfinder.
  • pdoPage — сниппет для организации постраничной навигации.
  • pdoCrumbs — хлебные крошки.
  • pdoUsers — вывод пользователей.
  • pdoSitemap — создание карты сайта.
  • pdoNeighbors — вывод соседних ресурсов для выбранного.
  • pdoField — сниппет для вывода любого поля или TV указанного ресурса.
  • pdoTitle — вывод специально оформленного title страницы.

pThumb

Расширение для создания миниатюр изображений. Обратно совместим с phpThumbOf.

quasiForm

Набор сниппетов для обработки форм. Подробнее можно почитать здесь: https://quasi-art.ru/portfolio/webdev/quasiform

Queeg

Я написал отдельную статью про этот плагин. Он помогает из фронтенда сразу перейти к редактированию ресурса в панели.

SimpleSearch

Организация поиска на сайте.

translit

Плагин для транслитерации псевдонимов ресурсов.

Файлы

ЧПУ

Без ЧПУ сейчас никуда — нужно переименовать файл ht.access в .htaccess. Мой вариант .htaccess (в том числе и для MODX Revolution) можно посмотреть здесь.

Перенос сайта на хостинг

Мне довелось переносить сайты между хостингами на Evolution и Revolution. И в обоих случаях постоянно приходилось менять какие-то настройки, сбрасывать пути, удалять кэш и пр. Однако, немного покопавшись у MODX Revolution под капотом, я вывел несколько простых действий, которые делают перенос сайта на MODX Revolution гораздо проще.

Пройдясь поиском по содержимому файлов MODX можно выяснить, что пути каталогов MODX Revolution прописываются во время установки и жёстко привязываются к системе, на которой запущен сайт. Вот список этих файлов, в которых можно найти путь до сайта:

  • config.core.php
  • connectors/config.core.php
  • core/config/config.inc.php
  • manager/config.core.php

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

$modx_processors_path = '/home/user/www/site.local/www/core/model/modx/processors/';

Очевидно, что при переносе на другой сервер путь до сайта должен быть другим. Поэтому я обычно делаю его динамическим, беря путь до корня сайта из глобального массива $_SERVER.

$modx_processors_path = $_SERVER['DOCUMENT_ROOT'].'/core/model/modx/processors/';

Как мы видим, в переменной $_SERVER['DOCUMENT_ROOT'] хранится путь до корня сайта без завершающей черты. Если произвести данную замену во всех файлах, перечисленных выше, при переносе сайта нужно будет только изменить данные для соединения с базой данных и очистить кэш — удалить каталог core/cache

Настройки системы

ЧПУ

Как было написано ранее, для активации ЧПУ необходимо переименовать файл в корне сайта. Помимо этого требуется включить ЧПУ в настройках сайта.

Как включить ЧПУ
Активация ЧПУ

Также принято использовать транслит в адресе (для чего и устанавливается расширение ядра translit). Но, чтобы он заработал, нужно указать его в настройках системы.

Как включить транслитерацию псевдонимов ресурсов
Включение транслитерации псевдонимов ресурсов

Вот и всё, система настроена и готова к работе. Спасибо за внимание.