Modx темы: Готовые сайты, темы / Дополнения MODX / modstore.pro

Темы на MODX Revolution / Русскоязычное сообщество MODX

Не для кого не секрет что MODX Revolution является хорошим инструментом для определенных задач. Каждый человек в нем находит свой интерес.
С недавнего времени у меня появился интерес и вопрос:
Почему всякие популярные CMS имеют возможность ставить темы, а в MODX нет?
И вот очередной задор на создание нового пакета начался. Не вдаюсь пока в подробности, тк это отдельная статья (может быть будет), недавно допилил бетта-версию менеджера тем.
Пакет управления темами – это первый пакет который устанавливается и сама тема это еще один пакет.

Т.е. если у вас потенциально 2 темы похожи по функционалу, то поменяв одну настройку, вы можете получить новый дизайн моментально. И почти ничего не сломается.
Таким образом хочу предложить данный пакет со своим стандартом для создания темок для MODX.
Вообще темы и кастомная настройка нужны крайне малому кол-ву людей, (многие даже кардинально против тем, оглядываясь на WP и J) но может, я ошибаюсь и пакет и идея все же будет востребован более широко.

Я например наоборот за темы — они позволяют ускорить запуск проекта.

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

А вот сами темы могут быть и платными и бесплатными – тут как захочет создатель темы.
Потому что создать тему – нужно затратить времени больше чем обычно (если мы говорим о качественной теме с настройками, ведь в настройках основной смысл тем.). Ну и естественно настройки в адмике, а не в коде. Т.е. чтобы Простой человек – поставил тему, и начал создавать ресурсы, загружать фотки, а параллельно менял размеры блочков, скрывал, добавлял надписи и блоки где хочет.
Конечно вседозвола в теме недолжно быть, это не контент билдер типа WP, а конфигуратор темы. Сам разработчик в теме предусматривает блоки и определяет какие параметры сможет поменять менеджер. Чтобы вы поняли о чем речь — маленькие примеры:

1) Изменяем вывод и цвет элементов
2) Добавляем текст в свободное место сетки.

Логика:
Есть строки цикла, которые вызывают более мелкие строки – блоки (Штуки).
В них прописана логика что подключается и как. И строки и блоки зависят от шаблонов modx. Те например строка – шапка сайта, и она подключает блоки соц-сетей, контакты. И так каждая стока со своим набором.

Возможности Сток:
— регулировать кол-во, вложенность основного блока. Тут создается сетка-разметка, например для шапки сайта или контента с сайдбаром или без сайдбара и прочее…
— Указываются шаблоны в которых показывать или выключать показ конкретной линии.

Возможности Штуковин (блоков):
1. Возможность тонкой настройки Штуковины для вывода. Например Css переключения отображения блока (например включить/выключить заголовок).
2. Возможность добавить предусмотренный произвольный блок. Например Последние новости. И выбрать у него – вкл/выкл слайдер. И кол-во элементов к выводу и прочее.
3. Возможность привязки к какому либо шаблону на сайте. (вкл-выкл).
4. Конфигурирование блока под нужную задачу. Можно просто вывести текст или лексикон из словаря.

Можно считать это экспресс анонсом.
Если данная тема заинтересует и получит отклик вас, читатели, то расскажу и опишу все это дело подробнее.

Так же если вы хотите поддержать проект по темам – милости прошу донат у меня в профиле.

Алексей Смирнов

08 февраля 2022, 17:02

<дел>

[[*длинное название]]

[[*содержание]]
[[$нижний колонтитул]]

Когда MODX получит запрос на страницу с использованием этого шаблона, он получит страницу, проверит поле своего шаблона (которое будет содержать идентификатор этого шаблона) и получит шаблон.

Затем начнется замена тегов. Первый тег [[*CssPath]] необязателен, но это интересный трюк. Тег относится к переменной шаблона под названием «CssPath», которую вам нужно будет создать и прикрепить к этому шаблону. Телевизор будет содержать путь к файлу CSS, который вы хотите использовать для каждого отдельного документа. Если вам нужен один и тот же файл CSS для каждого документа, использующего этот шаблон, в этом нет необходимости, но иногда удобно использовать разные CSS для разных страниц. В этом случае тег будет заменен значением переменной шаблона для текущего ресурса.

Кроме того, вы также можете использовать сниппет вместо TV для пути CSS. Фрагмент может обнаружить, что пользовательский агент возвращает разные пути для каждого из них. Это обеспечит разные файлы CSS для каждого типа пользовательского агента (например, разные файлы CSS для планшетов или смартфонов).

Затем MODX заменит тег [[++site_name]] значением системной настройки site_name, а затем заменит тег [[*pagetitle]] значением в поле pagetitle текущего ресурса. В базовом теге href тег [[+site_url] будет заменен значением системной настройки site_url.

, поскольку [[$header]] является тегом фрагмента, он будет заменен содержимым фрагмента «заголовок».

Тег Wayfinder немного сложнее. MODX сначала заменит тег [[*id]] идентификатором текущего ресурса (взятым из поля id объекта ресурса). Затем он выполнит фрагмент Wayfinder, отправив идентификатор в качестве свойства. Wayfinder будет использовать этот идентификатор и создать целое меню, содержащее все дочерние элементы текущего ресурса, и вернуть его в виде строки. MODX заменит весь тег Wayfinder этим меню.

Тег [[*longtitle]] будет заменен значением поля longtitle текущего ресурса, а тег [[*content]] будет заменен значением поля содержимого текущего ресурса.

Наконец, тег [[$footer]] будет заменен содержимым фрагмента «нижнего колонтитула».

После замены всех фрагментов MODX отправит готовую веб-страницу в браузер для отображения.

Шаблоны могут быть простыми или сложными по вашему желанию. Они могут содержать любые теги MODX, а с помощью переменных шаблона, сниппетов и различных файлов CSS вы можете сделать так, чтобы один и тот же шаблон выглядел по-разному на разных веб-страницах.

 

Моя книга, MODX: официальное руководство — цифровое издание теперь доступна здесь.

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

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

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