Modx revolution документация на русском: О проекте / docs.modx.pro

О проекте / docs.modx.pro

Последние обновления

06 апреля 2023, 19:30
Компоненты / AjaxFormItLogin / Общие сведения / Особенности и Быстрый старт

06 апреля 2023, 19:30
Компоненты / AjaxFormItLogin / Общие сведения / Системные настройки

06 апреля 2023, 19:30
Компоненты / msProductDiscounts / JavaScripts

23 марта 2023, 18:00
Компоненты / AjaxFormItLogin / Валидаторы / aflUserExists

15 марта 2023, 15:30
Компоненты / cityFields / Формирование карты сайта

11 марта 2023, 10:00
Компоненты / msProductDiscounts / Перед началом работы

07 марта 2023, 11:30
Компоненты / msProductDiscounts / Кейсы

06 марта 2023, 22:00
Компоненты / msProductDiscounts / JavaScrips

02 марта 2023, 20:30
Компоненты / cityFields / Управление городами и данными

02 марта 2023, 20:30
Компоненты / cityFields / Использование доменов, поддоменов и подкаталогов

Open Source документация MODX Revolution, распространяемая через GitHub.

Для того, чтобы внести свой вклад в развитие документации, вам нужно просто сделать pull-request в репозиторий.

Такая организация гарантирует:

  • Сохранение истории всех изменений.
  • Использование простого языка разметки Markdown.
  • Возможность не переживать за проект — вы всегда можете запустить копию у себя.

Идея

Сам принцип подсмотрен у проекта daux.io, который генерирует сайт налету по статичным страницам. Для работы нужен только его скрипт и директория с определённой структурой и файлами в формате Markdown.

Однако, на мой взгляд у daux.io есть несколько серьёзных недостатков:

  • Неудобное управление шаблоном.
  • Отсутствие мультиязычности в оформлении страниц.
  • Нет кэширования, неизвестно каких объемов документацию он потянет.
  • Нет встроенного поиска.
  • Нет перенаправления с одного адреса на другой, при переносе документа.
  • Довольно много ошибок в коде.

В общем, для небольших объёмов это хорошее решение, но для нашего проекта мы используем MODX.

Принцип остаётся тот же: директория с файлами Markdown, из которых строится сайт. Но теперь это самостоятельный сайт, со всеми наворотами, который обновляет свои страницы из GitHub. Мы избавились от всех недостатков daux.io и добавили преимущества MODX.

Правила оформления документации

Структура

Формат репозитория определяется следующей структурой:

  1. Языковая версия
  2. Раздел
  3. Тема
  4. Дальше структура определяется в зависимости от темы
  5. Чтобы указать порядок директорий и файлов, мы используем числовые префиксы.

Вот путь к файлу с описанием сниппета HybridAuth на русском:

/ru/02_Компоненты/04_HybridAuth/01_Сниппеты/01_HybridAuth

Заголовки

Для заголовков мы используем хештэги ## и между ними и текстом ставим пробел. Например: ## Заголовок

Заголовки должны быть не больше h3, то есть, 2 решетки ##:

  • h3 = ##
  • h4 = ###
  • h5 = ####

Между заголовком и текстом сверху оставляется одна пустая строка. Между заголовком и текстом снизу отступов делать не нужно.

Ссылки

Ссылки на документы нужно проставлять в конце страницы, чтобы их было удобно искать и обновлять. В markdown это делается так:

[Название ссылки][1]
[Название другой ссылки][2]
[1]: http://mylink.com/
[2]: http://mylink.com/test.html

Помимо прочего, это позволяет использовать одну ссылку несколько раз на странице:

[Ссылка 1][1]
[Ссылка 2][2]
[1]: http://mylink.com/

Ссылки на страницы репозитория необходимо указывать от корня, с ведущим слешем, тогда по ним можно переходить прямо на GitHub:

[Ссылка на русский раздел pdoTools][3]; [3]: /ru/01_Компоненты/01_pdoTools

Проще всего открывать нужную страницу на GitHub и копировать адрес из url.

Ссылки на изображения можно вставлять сразу в тексте. Для указания изображений лучше использовать сервис на file.modx.pro (требует авторизацию). Он автоматически сгенерирует уменьшенную копию и код markdown для вставки.

[![](https://file. modx.pro/files/8/5/3/85333575318f1fb2e7fe2881eb25559as.jpg)](https://file.modx.pro/files/8/5/3/85333575318f1fb2e7fe2881eb25559a.png)

Выделение

Cистемные параметры нужно выделять жирным текстом, например: **&parametr** будет выглядеть, как &parametr.

Плейсхолдеры оборачиваются в одинарные обратные апострофы. Например: `[[+placeholder]]` будет выглядеть, как [[+placeholder]].

Для обрамления кода нужно использовать 3 обратных апострофа «` перед секцией кода, и после:

Здесь код

Сам код начинается с новой строки. Пустые строки до и после кода — по желанию.

Перенос строки

Для принудительного переноса строки нужно добавить 2 пробела на конце. Парсер заменит их на тег br.

Таблицы

Вы можете использовать таблицы для удобного отображения различных данных, например параметров какого-то сниппета:

First Header  | Second Header
------------- | -------------
Content Cell  | Content Cell
Content Cell  | Content Cell
First HeaderSecond Header
Content CellContent Cell
Content CellContent Cell

Основы Markdown

Подробная документация на сайте у автора.

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

Проверить, как будет выглядеть ваш документ можно на bezumkin.ru/utils/markdown.

MODX синтаксис — документация на русском языке

Автор Алексей На чтение 5 мин Просмотров 2.7к. Опубликовано Обновлено

Содержание

  1. Комментарии в дескрипторах (тегах).
  2. Составляющие части тегов
  3. Параметры
  4. Кэширование
  5. Плейсхолдеры
  6. Проверка синтаксиса

Абсолютно для любого пользователя сайта на MODX, теги несут основополагающее значение, по причине того, что они являются основными рабочими элементами.

Указывая тот или иной тег, во время работы с сайтом, пользователь получает возможность вызвать интересующую его часть HTML, либо PHP кода, отрывок текста или какие-то переменные документы.

Различают следующие виды синтаксиса тегов MODX:

для полей и элементов;

ЭлементНазвание элементаПример вывода
Шаблоны
Поля ресурсовpagetitle[[*pagetitle]]
Дополнительные поляtags[[*tags]]
Чанкиheader[[$header]]
Сниппетыsnippet[[snippet]]
Плагины

для вывода контента;

ЭлементВ RevolutionПример вывода
Плейсхолдеры[[+placeholder]][[+modx.user.id]]
Ссылки[[~link]]
[[~[[*id]]? &scheme=`full`]]
Системные настройки[[++system_setting]][[++site_start]]
Языковые теги[[%language_string_key]]
Комментарии[[-this is a comment]]

для системных параметров парсера;

ОписаниеТэг
Выводит время потраченное на запросы к базе данных[^qt^]
Выводит количество запросов к базе данных[^q^]
Выводит время потраченное на работу PHP скриптов[^p^]
Выводит общее время потраченное на генерацию страницы[^t^]
Выводит источник содержимого (база данных или кэш)[^s^]

Последний вид является своеобразным упрощенным форматом.

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

Комментарии в дескрипторах (тегах).

Результатом изучения обсуждений, происходящих на форумах, стало получение информации о том, что довольно значительная часть пользователей испытывает потребность в комментариях. В момент обнаружения тега, представляющего из себя элемент, который не существует, парсер, при условии настройки по умолчанию, отбрасывает весь дескриптор. Использовав такую особенность поведения, можно осуществить добавление комментариев в шаблоны, поля ресурсов и чанки. При этом отображение комментария во фронтенде происходить не будет. Стоит отметить, что если тег будет составным, то осуществление обработки внутренних тегов произойдет до того как парсер отбросит значение

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

[[- Это комментарий. Он будет удален из вывода страницы. ]]

Составляющие части тегов

Структура любого тега, в не зависимости от его вида, имеет несколько частей.

[[                                      // открываем тег
    !                                   // указание, что тег НЕкешируемый (необязательно)
    elementToken                        // тип элемента $ - чанк, * - поле элемента или ТВ, + - плейсхолдер, и т.  д.
    elementName                         // имя элемента
    @propertyset                        // можно указать набор параметров для этого элемента (необязательно)
    filterName=`modifier`               // один или несколько фильтров вывода (необязательно)
    ?                                   // указание того, что дальше идут параметры элемента (необязательно если параметры отсутствуют)
    &propertyName=`propertyValue`       // любой параметр элемента, начинающийся с &
    &propertyName2=`propertyValue2`     // параметров может быть сколько угодно, и все начинаются с &
]]                                      //закрываем тег

Они могут быть прописаны в линию, так: [[!pdoResourcesr? &parents=’5,10,11′ &limit=’7′]] или быть расположенными в столбик.

[[!pdoResources?
&parents='5,10,11'
&limit='7'
]]
Параметры

Всем тегам предоставлена гипотетическая возможность иметь параметры. К примеру, у нас есть чанк с именем zdravstvujte и со следующим содержимым внутри:

Здравствуйте, [[+name]]!

В данном чанке есть  плейсхолдер ([[+name]]), и мы к примеру хотим задать ему какие нибудь значения.

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

[[$zdravstvujte? &name=`Василий`]]

В итоге получим следующее:

Здравствуйте, Василий!

Кэширование

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

[[!+placeholder]]
[[!$chunk]]
[[!*template_var]]
[[!snippet]]

Плейсхолдеры

Вызвав не кэшируемый плейсхолдер, можно осуществить установку сниппетом, интересующего плейсхолдера.

[[!Profile]]
Привет, [[!+username]].
Проверка синтаксиса

Проверка корректного написания тегов можно осуществить при помощи плагина SyntaxChecker.

Аналогичную функцию может выполнить редактор Ace, отличительной особенностью которого является подсветка синтаксиса тегов MODX.

Весь список тегов доступных для MODX Revolution можно найти в официальном руководстве на сайте rtfm.modx.com

Синтаксис зубрить не обязательно, по ходу курса вы его выучите на автомате, т.к. он будет использоваться везде и не раз. В следующем уроке изучим стандартные модификаторы , которые помогут нам в дальнейшем делать шаблоны более гибкими. Можно вообще не использовать стандартный синтаксис модекса, т.к. в самом попопулярном дополнении — PdoTools добавлен шаблонизатор fenom со своими модификаторами. Многие бывалые разработчики пишут все на чистом fenom. Можно использоваться сразу и феном и синтаксис MODX. Буду показывать и то и другое.

О проекте / docs.modx.pro

Последние обновления

09 марта 2021, 07:00
Компоненты / PageSpeed

28 августа 2020, 07:00
Компоненты / pdoTools / Классы / pdoFetch

26 июня 2020, 07:00
Компоненты / FrontendEditor

05 апреля 2020, 07:00
Компоненты / pdoTools / Фрагменты / pdoMenu

21 февраля 2020, 07:00
Компоненты / pdoTools / Парсер

18 октября 2019, 07:00
Компоненты / miniShop2 / Фрагменты / msGetOrder

12 сентября 2019, 07:00
Компоненты / mSearch3 / Фрагменты / mSearchForm

12 сентября 2019, 07:00
Компоненты / mSearch3 / Фрагменты / mFilter2

12 сентября 2019, 07:00
Компоненты / mSearch3 / Фрагменты / mSearch3

25 августа 2019, 07:00
Компоненты / Sendex / Фрагмент

Документация с открытым исходным кодом для MODX Revolution

Цель

Основная цель этой документации — дать возможность каждому внести свой вклад. Не нужно сразу логиниться, запрашивать доступ у кого угодно, вы просто отправляете коммит в этот репозиторий, и он будет принят.

Мы описываем сторонние компоненты и ядро ​​MODX на двух языках: русском и английском. Если вы готовы управлять документацией на другом языке, свяжитесь с нами, создав задачу.

Формат

Все файлы написаны в Markdown, имена совместимы с daux.io. В любой момент вы можете клонировать этот репозиторий и развернуть его на своем сервере. Также вы можете читать файлы прямо на GitHub.

Структура

Формат репозитория определяется следующей структурой:

  1. Языковая версия
  2. Раздел
  3. Тема
  4. Дальнейшая структура определяется в зависимости от темы
  5. Чтобы указать порядок каталогов и файлов, мы используем числовые префиксы.

Вот путь к файлу с описанием сниппета HybridAuth на английском:

 /en/02_Components/04_HybridAuth/01_Snippets/01_HybridAuth 

Заголовки

Для заголовков используем хештеги ## и между ними и текстом поставить пробел. Например: ## Заголовок

Заголовки не должны быть больше h3, например — 2 хештега ##:

  • h3 = ##
  • ч4 = ###
  • ч5 = ####

Между заголовком и текстом сверху одна пустая строка. Между заголовком и текстом внизу пустая строка не нужна.

Ссылки

Ссылки на документы должны быть добавлены в конец страницы, чтобы упростить поиск и обновление. В уценке это достигается:

[Ссылка][1]
[Название другой ссылки][2]
[1]: http://mylink.com/
[2]: http://mylink.com/test.html
 

Среди прочего, это позволяет использовать одну ссылку несколько раз на странице:

[Ссылка 1][1]
[Ссылка 2][1]
[1]: http://mylink.com/
 

Ссылки на страницы репозитория должны начинаться с начального слэша, указывающего на корень, тогда можно сразу перейти на GitHub:

[Ссылка на английский раздел pdoTools][3]
[3]: /en/01_Components/01_pdoTools
 

Проще открыть нужную страницу на GitHub и скопировать адрес из url.

Ссылки на изображения можно вставлять прямо в текст. Указать образ и воспользоваться сервисом на file.modx.pro (требуется авторизация). Он автоматически генерирует миниатюру и код уценки для вставки.

 [![](https://file.modx.pro/files/8/5/3/85333575318f1fb2e7fe2881eb25559as.jpg)](https://file.modx.pro/files/8/5/3/85333575318f1fb2e7fe2881eb25559a.png) 

Выделение

Системные настройки должны быть выделены жирным шрифтом, например: **&параметр** будет выглядеть как &параметр .

Заполнители, заключенные в одиночные обратные апострофы. Например: `[[+placeholder]]` будет выглядеть как [[+placeholder]] .

Для блока с кодом мы используем 3 обратных апострофа «` до и после:

```
Вот код
```
 

Код начинается с новой строки. Пустые строки до и после кода добровольно.

Новая строка

Для принудительного разрыва строки необходимо добавить два пробела в конце строки. Парсер заменит их тегом br .

Таблицы

Вы можете использовать таблицы для удобного отображения данных, таких как свойства сниппета:

 Первый заголовок | Второй заголовок
------------- | -------------
Ячейка содержимого | Ячейка содержимого
Ячейка содержимого | Ячейка содержимого 
Первый заголовок Второй заголовок
Ячейка содержимого Ячейка содержимого
Ячейка содержимого Ячейка содержимого

Сравните imagesite и modx Revolution

Характеристики

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

Natively Mobile — мобильная адаптивность с 2005 года: С нашим первым выпуском в 2005 году вы могли создавать веб-сайты HTML5/CSS3 за годы до того, как другие поняли ключ. Шаблонный метод MODX не навязывает загадочные слои темы и не ограничивает вас в изменении того, как вы используете тему, когда захотите. Все на заказ — у вас полный контроль: Независимо от того, хотите ли вы начать новый проект с чистого листа или начать с пользовательского набора надстроек и адаптивной мобильной платформы, вы полностью контролируете, что вы включаете и как создаете веб-сайты. Настраиваемый менеджер — индивидуальное управление сайтом: Менеджер — это интуитивно понятное рабочее пространство для контента и администрирования, созданное с помощью нашего API. Разработчики получают возможность создавать собственные интерфейсы и дополнительные возможности. Настройка формы дает вам настраиваемый пользовательский интерфейс менеджера, в котором отображаются только необходимые поля и меню. Многоязычность — свободное владение языками i18n и l10n: MODX предлагает несколько вариантов управления многоязычными веб-сайтами, один из которых обязательно подойдет.
Ключи культуры и контексты предоставляют общесистемные настройки интернационализации и хук для управления всем, что требует локализации. Мультисайт — все ваши сайты в одном месте: Мир движется от кирпичей и раствора к битам и байтам. Это означает, что если вы еще не запускаете несколько веб-сайтов в Интернете, скорее всего, вы будете: целевые страницы, кампании, блоги, порталы обслуживания клиентов и ваш основной веб-сайт. Мультисервер — весы и балансы: Веб-сайты не должны терпеть неудачу из-за собственного успеха. MODX разработан для масштабирования и поддерживает интеллектуальное масштабирование с помощью таких вещей, как Varnish и memcached, или по старинке, загружая сбалансированные серверы и базы данных. Расширенное кэширование — в любом вкусе, который вам когда-либо понадобится: Встроенное полное и частичное кэширование страниц помогает оптимизировать ресурсы и нагрузки сервера. Вы также можете кэшировать наборы результатов базы данных в файл, память (через memcached) или настраиваемый обработчик кеша, расширяя возможности обслуживания сайтов с высоким трафиком.
SEO Supremacy — идеальная SEO-платформа: В последнее время SEO сильно изменилось и будет продолжать меняться. MODX дает вам 100% контроль над выводом. Создание сайта, который удивительно хорошо работает в поиске, занимает несколько минут. Комплексные SEO Extras помогут вам управлять своими усилиями.

Характеристики

Управление изменениями Интегрируйте подсистемы рабочего процесса, жизненного цикла, ревизии и безопасности, чтобы обеспечить гибко настраиваемые возможности управления изменениями. Контроль версий Автоматически распознавать новые версии документов по мере их ввода в систему и назначать следующий доступный номер версии, автоматически архивируя любые внесенные изменения. Жизненный цикл Автоматически назначайте документы на жизненный цикл в зависимости от типа или категории документа и его предполагаемого использования. Различные действия могут выполняться автоматически, когда документы переходят из одного состояния жизненного цикла в другое. Рабочие процессы Перемещайте документы (а также пометки и папки) от пользователя к пользователю, чтобы автоматизировать практически любой бизнес-процесс. Одобрения Настройте подсистемы рабочего процесса и жизненного цикла, чтобы автоматизировать широкий спектр процессов проверки и утверждения, а также автоматически направлять документы пользователям для утверждения, чтобы значительно сократить время проверки. Справочные файлы Убедитесь, что эталонные файлы захвачены, загружены и правильно связаны друг с другом, позволяя загружать только интересующие вас детали и узлы. Синхронизация Используйте несколько серверов в разных местах для обмена файлами и совместной работы, позволяя пользователям за пределами корпоративной сети иметь контролируемый доступ к документам либо в облаке, либо в управляемой хост-среде. Создайте высоконадежную конфигурацию корпоративного обмена файлами без сложной глобальной сети или сложных протоколов передачи. Основные надписи Собирайте информацию основной надписи САПР (значения свойств файла) и связывайте их с соответствующими полями поиска (значения индекса или метаданные) в ImageSite для дополнительных возможностей поиска и просмотра.

Оставить комментарий

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

© 2019 Штирлиц Сеть печатных салонов в Перми

Цифровая печать, цветное и черно-белое копирование документов, сканирование документов, ризография в Перми.