Перейти к основному содержанию Перейти к навигации по документам

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

Что такое переменная шаблона TV?

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

Почему это называется переменной шаблона Другие системы управления контентом называют их просто «Пользовательские поля», так почему же MODX называет их «переменными шаблона»? Ну, каждый раз, когда у вас есть настроенный контент, у вас также будут настроенные шаблоны. Ваши шаблоны MODX уже имеют плейсхолдеры для содержимого или longtitle, потому что это встроенные поля для стандартной страницы MODX: информация и шаблон, используемые для отображения этой информации, идут рука об руку. Если у вас есть форма менеджера с полем для ввода специальной даты, то вполне понятно, что ваш HTML-шаблон, который вы используете для отображения этой страницы, также будет выделен для отображения этой даты. Аналогично, вы не будете создавать HTML-шаблоны с элементами div и таблицами для форматирования битов данных, если менеджер не предложит какой-либо способ их редактирования. Таким образом, содержимое неумолимо связано с шаблоном, поэтому имя переменная шаблона.

Когда Ресурс отображается в Интернете, TV заменяются фактическим значением, введенным пользователем. TV есть Шаблон, то есть они могут быть использованы только в Шаблонах назначеных им.

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

Использование

Допустим, у нас есть TV под названием bio, это текстовое поле TV, которое мы создали. Мы присвоили его нашему шаблону «Страницы биографии» и хотим показать его на нашей странице. Для этого мы просто поместим этот тег в наши шаблоны: [[*bio]]

Чтобы добавить TV на страницу, вы должны вспомнить его шаблон (это переменные Template, помните?). Убедитесь, что вы определили TV и прикрепили его к используемому шаблону. Смотрите страницу Создание переменной шаблона.

Расширенное использование

TVs также могут иметь свойства. Скажем, у вас был TV под названием «intromsg» со значением:

Hello [[+name]], you have [[+messageCount]] messages.

Вы можете заполнить данные с помощью вызова:

[[*intromsg?name=`George` &messageCount=`123`]]

Который будет выводить:

Hello George, you have 123 messages.

Выходные фильтры также отличные инструменты для применения к TV. Скажем, вы хотите ограничить вывод TV до 100 символов. Вы бы просто использовали выходной фильтр «limit»:

[[*bioMessage:limit=`100`]]

Когда мы говорим «Создать переменную шаблона», мы можем говорить о двух возможных действиях: мы можем ссылаться на действие добавления некоторого текста или содержимого в одно из существующих пользовательских полей при редактировании страницы MODX (т.е. ресурс). ИЛИ мы можем ссылаться на действие по определению этого поля, чтобы оно было доступно нашим ресурсам MODX. Эта страница посвящена последнему. В первом случае мы будем создавать пример переменной шаблона, в то время как второй случай - это определение схемы шаблона переменной, которая определяет, как будет вести себя каждый экземпляр.

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

Создание переменной шаблона

1. Войдите в менеджер MODX

Войдите в админку MODX как администратор (или подобный), чтобы это работало!

2. Добавьте переменную шаблона (TV)

В левой панели дерева ресурсов перейдите на вкладку Элементы

Создание дополнительного поля

3. Заполните общую информацию

Когда мы определяем TV, мы должны определить много информации о поведении этого настраиваемого поля. Вкладка «Общая информация» содержит основную информацию для этой переменной.

Заполняем общую информацию о TV

  • Имя переменной: Это соответствует плейсхолдерам, которые будут использоваться в ваших шаблонах, например TableOfContents = [[*TableOfContents]]. Это имя должно быть уникальным!
  • Подпись: Это основная метка для вашей переменной, которая появляется при редактировании ресурса, который использует это TV
  • Описание: Это вторичная метка для вашей переменной
  • Категория: Это влияет на то, на какой вкладке отображается переменная
  • Порядок сортировки: Если вы используете более одного TV, это определит, какие из них появятся сверху (1 = верх, большие цифры опускаются TV вниз)

4. Определите параметры ввода

Затем нажмите на вкладку Параметры ввода: вам нужно выбрать тип поля, например, текстовое поле, раскрывающееся поле, WYSIWYG и т.д. Ознакомьтесь с Типами ввода переменных шаблона для полного списка возможных типов ввода.

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

Параметры вывода

5. Настроить доступ к шаблонам

Перейдите на вкладку Доступ к шаблону: вы должны определить, какой шаблон(ы) будет использовать это пользовательское поле, которое вы определили. Как только вы определили это пользовательское поле, вы можете выбрать, какой шаблон(ы) действительно может использовать Это.

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

6. Сохраните определение TV

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

7. Используйте это: создайте ресурс

Теперь, когда вы определили свой TV и добавили его в шаблон, добавьте ресурс MODX (например, щелкните правой кнопкой мыши в дереве документа и выберите Создать -> Создать ресурс здесь). Выберите шаблон, который использует этот TV.

8. Измените значение

Когда ваш ресурс MODX (т.е. страница) использует шаблон, содержащий вашу переменную шаблона, вы можете добавить данные к этому атрибуту, щелкнув на вкладке «Переменные шаблона» на странице.

Расширенное использование

В ХОДЕ ЗАПОЛНЕНИЯ ...

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

Параметры вывода

Параметры вывода

В большинстве случаев нужен вывод по умолчанию, но тем неменее к примеру для дат можно выберать «Дата», и, как вы заметите, под этим полем (в зависимости от выбранного Output Render) будут отображаться некоторые поля формы.

Позволяет нам редактировать более детальные опции для этого Output Render.

Свойства

Оттуда мы можем указать любые свойства по умолчанию, которые мы хотим для TV. «Как вы можете использовать свойства для TV?», спросите вы. Ну, скажем, мы делаем текстовый TV под названием "singSS ". В нашем контенте у нас есть это:

Просмотр: 

Мы можем добавить свойство списка «subsection» в сетку, а затем разрешить переопределение этого свойства с помощью наборов свойств. Скажем, мы создали набор свойств с именем CarsSectionTVPS (для набора свойств). В нем мы устанавливаем свойство «subsection» на «Cars». Затем мы прикрепили бы его к TV в нашем ресурсе, или шаблоне, или там, где мы его используем, следующим образом:

[[*viewingSS@CarsSectionTVPS]]

Это будет выводить TV:

Просмотр: Cars

Доступ к шаблонам и группам ресурсов

Доступно для шаблонов

Мы можем назначить TV на Шаблоны, также. Это позволяет тем ресурсам, назначенным тем Шаблонам редактировать TV для каждого ресурса.

Кроме того, TV могут быть ограничены определенными группами ресурсов, которые можно выбрать в сетке с пометкой «Права доступа».

Смотрите также

  1. Привязки
    1. CHUNK привязка
    2. DIRECTORY привязка
    3. FILE привязка
    4. INHERIT привязка
    5. RESOURCE привязка
    6. SELECT привязка
  2. Типы ввода переменных шаблона TV
  3. Типы вывода переменных шаблона TV
    1. Тип вывода TV - Дата
    2. Тип вывода TV - Разделитель
    3. Тип вывода TV - HTML тег
    4. Тип вывода TV - Изображение
    5. Тип вывода TV - URL
  4. Добавление пользовательского типа TV - MODX 2.2
  5. Создание поля множественного выбора для связанных страниц в вашем шаблоне
  6. Доступ к значениям переменных шаблона через API