Modx вывод TV другого ресурса

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

Приложения

Ace

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

CKEditor

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

ClientConfig

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

Collections

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

MODX — Вывод ресурсов через PdoPage, с разбивкой на страницы и свое оформление пагинации

fileTranslit

Modx Evolution: Как получить доступ и изменить переменную шаблона (tv) перед сохранением?

Не большой поклонник modx, но, к сожалению, это то, что мы используем в работе. Мне не удается сохранить измененную переменную шаблона в modx evolution (1.0.5). В моем плагине, вызванном с событием OnBeforeDocFormSave, я делаю это, чтобы получить и изменить tv:

Еще по теме:  Смотрешка ТВ приставка настройка

//include global variables global $content,$default_template,$tmplvars; $foo = $tmplvars[$TV_ID][1] . «bar»; $tmplvars[$TV_ID][1] = $foo;

Это не работает. $ foo установлен, но tv не сохраняется. $ TV_ID — это идентификатор ресурса переменной шаблона, за которым я после. Существует множество способов получить телевидение с вызовами API, но как его изменить до его сохранения? Любая помощь оценивается.

thelastshadow 31 авг. 2011, в 19:00
Поделиться

Жаль, что вы не фанат, modx — это моя любимая CMS из тех, что я использовал (Drupal, WordPress, Joomla)

Источник: overcoder.net

Базовые понятия MODX Revolution

Базовые понятия в MODX

К ресурсам относятся документы, веб-ссылки, символьные ссылки и статические ресурсы.

MODX pdoResources — выводим ресурсы

Элементы состоят из шаблонов, дополнительных полей, чанков, сниппетов и плагинов.

Файлы есть файлы – программный код, таблицы стилей, java-скрипты, медиа-контент и т. д.

Ресурсы (Resources)

Ресурс – это один из объектов MODX, доступ к которому можно осуществить посредством уникального идентификатора ресурса (URL/URI – Uniform Resource Locator/Identifier).

В основном ресурс представляет собой документ, другими словами, страницу сайта. Каждому такому ресурсу должен быть назначен шаблон, который, в свою очередь, может определять дополнительные поля (переменные шаблона, TV) этого ресурса.

Существует четыре встроенных типа ресурсов:

  • Документ – самый распространённый ресурс, веб-страница. Состоит из заголовка, описания, аннотации, подробного содержимого, дат и других полей ресурса;
  • Веб-ссылка – ресурс MODX, который содержит URL (единый указатель ресурсов), ссылку на внешний ресурс или веб-страницу. Основное назначение ресурса – использование в качестве ссылок в меню MODX;
  • Символьная ссылка – ресурс , указывающий на другой документ MODX, однако поле символьной ссылки содержит только идентификатор ресурса (ID) документа, на который она ссылается. Основное назначение символьных ссылок – как и в предыдущем случае;
  • Статический ресурс – ресурс, содержащий в поле контента путь к определенному файлу. Если на сайте имеется контент, который не должен изменяться динамически, можно использовать для его отображения статический ресурс.
Еще по теме:  Как установить кронштейн для ТВ

Шаблоны (Templates)

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

В шаблонах можно использовать любые теги, включая чанки, сниппеты, переменные шаблона.

Переменные шаблона (TV)

Переменные шаблона (Template Variables) – это дополнительные настраиваемые поля ресурсов MODX. Прменяются TV в тех случаях, когда вам необходимо создание новых пользовательских полей ресурса, отсутствующих в стандартном наборе атрибутов документа.

Дополнительное поле для описания услуги, изображение, которое будет выводиться в анонсах, адрес ссылки, куда будет перенаправляться пользователь при нажатии на кнопку – вот некоторые примеры использования переменных шаблона.

Чанки (Chunks)

Чанк – это фрагмент статического HTML-кода, содержит какую-либо часто повторяемую часть контента.

Стоит запомнить, что чанк не может содержать в себе исполняемый PHP-код (для этого служат сниппеты MODX).

В качестве примера можно привести стандартно применяемый чанк head, содержащий мета-теги страницы, ссылки на таблицы стилей и пр.

В шаблоне чанк вызывается так:

[[$имя_Чанка]]

Чанк обладает свойствами шаблона, но не содержит TV-параметры и не может быть назначен ресурсу напрямую.

Сниппеты (Snippets)

Сниппет в MODX – это элемент, который содержит в себе PHP-код, выполняемый во время обработки шаблона.

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

Если в системе уже присутствует какой-либо установленный сниппет, вызывается он так:

[[имя_Сниппета]] //Кэшируемый вызов

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

Еще по теме:  Ошибка 04 Триколор ТВ

[[!имя_Сниппета]] //Некэшируемый вызов

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

Плагины (Plugins)

Плагин в MODX представляет собой PHP-код, который в отличие от работы сниппета исполняется при наступлении какого-то определенного системного события. Само событие для срабатывания плагина определяется вами.

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

Категории (Categories)

Категории – это обычные метки, или каталоги, которые можно применять к элементам MODX для того, чтобы упорядочить их наиболее удобным для вас образом.

Присвоить категорию элементу можно как путем перетаскивания элемента в нужную категорию, так и присваиванием элементу категории в специальном поле элемента.

Использование категорий в MODX необязательно.

Вот теперь можно вдумчиво и планомерно начинать чтение документации по CMS/CMF MODX Revolution.

Изучайте, экспериментируйте, создавайте.

  • Хостинг для MODX
  • Расширенная установка MODX

Источник: modxinfo.ru

Оцените статью
Добавить комментарий