Modx дополнительные поля: создание и использование дополнительных полей – MODX — Как добавить дополнительные поля к ресурсам

Содержание

создание и использование дополнительных полей

Разберём и научимся использовать TV в MODX Revo.

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

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

Пример работы, миниатюра статьи

Рассмотрим простое использование, создадим TV (миниатюру изображения) для ресурсов — статей, которые будет выводиться в рубрику.

1. Для начала создадим наше TV, для этого во вкладке «Элементы» создадим дополнительное поле.

создание tv modx revo

2. На первой вкладке указываем имя, его мы будем использовать для вывода.

создание tv modx revo

3. Далее заходим во вкладку «Параметры ввода» и здесь мы указываем в каком формате мы будем записывать наше tv. Выберем изображение, тем самым при создании, мы сможем через диспетчер файлов загружать и выбирать изображения.

создание tv modx revo

4. Заходим в пункт «Параметры вывода», где мы будем выбирать, в каком формате будем выводить наше tv. Указываем текст и при выводе мы будем получать адрес на наше изображение, к примеру: images/img.jpg.

создание tv modx revo modx revo

5. Заходим во вкладку «Доступно для шаблонов» и и выбираем шаблон для наших статей. Вы сможете писать tv во всех записях, у которых выбран данный шаблон.

создание tv modx revo

6. Наше дополнительное поле создано, сохраняем его.

7. Заходим в редактирование нашего ресурса (шаблон которого мы указали выше) и переходим в новую вкладку «Дополнительные поля», где у нас появляется наше поле.

создание tv modx revo

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

создание tv modx revo

8. Сохраняем запись, теперь мы сможем вывести наше изображение, как в самой статье, так и в рубрике.

9. Чтобы вывести в самой статье, заходим в шаблон статей и в нужном месте вызываем миниатюру:


<img src="[[*image]]" alt=""/>

Теперь в каждой статье будет выводиться изображение, где заполнено дополнительное поле.

Также прошу рассмотреть следующий вариант вызова


[[*image:notempty=``]]

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

10. Теперь выведем наше tv в родителе (рубрике), для этого заходим в его шаблон и вызываем наши рубрики с дополнительными полями:


[[!pdoResources? &limit=`10` &parents=`[[*id]]`  &tpl=`blog` &includeTVs=`image`]]

Вывели мы через PdoResurses, кто не знает, как с ним работать, читайте тут.

Главное подключить наше tv, за это отвечает — &includeTVs, где мы пишем имя нашего поля.

Теперь в чанке оформления blog, мы вызываем наше поле:

 


[[+introtext]]

Читать далее

Вот так просто и работать с дополнительными полями в modx, все они работают по аналогии с этим примером.

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

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

Последнее изменение поста: 4 июля 2019 в 16:45

В предыдущих статьях мы разбили шаблон на чанки, создали один сниппет и добавили его. Сегодня рассмотрим дополнительные поля (так же их называют: TV — template variables, переменные шаблона и Телевизоры) и принципы работы с ними.

Что это такое

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

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

Стандартные переменные шаблона

Каждый ресурс MODX имеет стандартный набор TV

стандартные tv

Так же поля есть на вкладке настройки.

Создание

Недостаточно стандартных полей? Можете с легкостью создать новые.

Для этого, в дереве с боку перейдите на вкладку «Элементы» и нажмите на значок «Новый TV», либо щелкните ПКМ на «Дополнительные поля» и выберите «Новое дополнительное поле» для создания новой TV.

Создаем новое TV MODX

Откроется окно создания переменной шаблона. Вводите имя (en) и заголовок (подпись, описание и категорию по желанию).

заполнение общей информации о TV

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

Далее переходим во вкладку «Параметры ввода» и указываем тип поля.

Краткий разбор стандартных типов ввода

  • URL — ввод URL адресов
  • Авто-метка — обычно используют для создания тегов к ресурсам (можно вводить незаполненные в значениях по умолчанию метки)
  • Дата — ввод дат
  • Изображение — для изображений
  • Переключатели (radio) — можно использовать для включения (отключения) каких-нибудь блоков
  • Списки (одиночный и множественный выбор)
  • Список ресурсов — для ввода/вывода ресурсов
  • Тег — почти то же самое что авто-метка (но можно выбирать только из введенных значений)
  • Текст — для ввода небольшого текста
  • Текстовая область — то же самое что текст, только окошко ввода побольше
  • Текстовый редактор — текстовая область, но уже с редактором
  • Файл — для различных файлов (которые разрешены в системной настройке upload_files)
  • Флажки (checbox) — по сути почти то же самое что переключатели
  • Число — ввод цифр
  • Электронная почта — ввод электронной почты.

Заполнение возможных значений для radio, списков, checbox

Возможные значения вводятся в таком формате:

Мышка||Кошка||Собака

либо:

Белый==#ffffff||Черный==#000000

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

В моем случае “Изображение”, так же можно указать значение по умолчанию. Данное поле будет использоваться во всех шаблонах — для Open Graph разметки + вывод основной картинки. В значении по умолчанию я указал не полный путь до картинки (вырезал путь указанный для источника файлов).

Заполнение параметров ввода

Параметры вывода оставляем по умолчанию и переходим во вкладку «Доступно для шаблонов» и установите галочку напротив своего шаблона (шаблонов) в которых понадобиться данное TV.

указываем шаблоны

У меня сейчас только 1 шаблон.

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

Для TV изображений рекомендую указывать новый источник файлов.

устанавливаем новый источник файлов по умолчанию

Необходимое поле создано, не забудьте сохранить.

Теперь таким же образом можете создать сколько угодно переменных шаблона. К примеру если вам нужны текстовые области (с текстовым редактором, то в поле, “параметры ввода” указываем “Текстовый редактор”.

Небольшая подсказка: Если какое-либо TV, которое вы хотите создать, похоже на ранее созданное, то вы можете просто-напросто дублировать его, вместо того чтобы создавать идентичное, тем самым ускорить процесс их создания. Для этого используйте опцию «Копировать».

Где располагаются

Дополнительные поля по умолчанию располагаются во вкладке “Дополнительные поля”, при редактировании страниц.

Дополнительные поля на страницах

 

Если вы настраивали MODX по моим урокам, то оно будет находиться под основным контентом (содержимым).

Как выводить в шаблонах

Для наглядности: так у меня сейчас выглядит первый экран главной страница.

первый экран

 

Слева текст (выделил оранжевым прямоугольником), справа картинка (выделил зеленоватым прямоугольником).

Статический код данного блока выглядит так:

статический код первого экрана

Превратим его в частично динамический:

<section>
    <div>
        <div>
           <div>
              <div>
                 <div>
                    <span>welcome</span>
                    <h2>[[*pagetitle]]</h2>
                    <h5>[[*introtext]]</h5>
                    <div>
                       <a href="#">Обо мне</a>
                       <a href="#">портфолио</a>
                    </div>
                 </div>
              </div>
              <div>
                 <div>
                    <img src="[[*img]]" alt="[[*pagetitle]]">
                 </div>
              </div>
           </div>
        </div>
     </div>
</section>

Здесь мы использовали поля pagetitle, introtext и созданное img (заполняем что не заполнено) и сохраняем.

пример заполненных полей

Переходим на главную и видим, что наш контент сменился.

получаем

Видео

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

Важно! Старайтесь не плодить кучу доп. полей — они не особо быстро выводятся. Для однотипных и сложных конструкций из доп. полей есть пакет MIGX.

В следующем уроке мы изучим компонент ClientConfig, который позволяет с легкостью создавать и выводить однотипные настройки (телефон, соц сети и т.д.) — и по скорости вывод этих полей выше (равен скорости вывода системных настроек).

MODX — TV параметры | ИТ Шеф

Статья, в которой рассмотрим назначение TV параметров и основные принципы работы с ними в MODX Revolution.

Что такое переменные шаблона (TV)?

По умолчанию любой ресурс в MODX Revolution имеет определённый набор полей: pagetitle (заголовок), content (содержимое), description (описание) и т.д.

Поля, которые имеет любой ресурс (документ) в MODX Revolution по умолчаниюПоля, которые имеет любой ресурс (документ) в MODX Revolution по умолчанию

Но кроме встроенных полей с каждым ресурсом можно ещё связать (добавить к нему) любое количество других полей. Осуществляются эти действия в MODX Revolution посредством TV переменных. Связывание TV параметров с ресурсами выполняется не напрямую, а через шаблоны. Т.е. для того чтобы дополнительное поле появилось у ресурса, соответствующий TV параметр должен быть связан с его шаблоном. Из-за этого данные переменные и называются TV, т.е. переменными шаблона (Template Variable).

Создание TV (дополнительных полей)

Рассмотрим, как в MODX Revolution с помощью TV-переменных можно расширить назначение стандартных ресурсов (документов). Например, разберём какие TV поля необходимо добавить к ресурсам, чтобы их можно было использовать, для представления книг на сайте.

В MODX создание TV параметров осуществляется очень просто, посредством выполнения следующих шагов:

  1. Войти в админку (менеджер) MODX Revolution.
  2. Перейти в левой панели во вкладку «Элементы» и нажать на кнопку «Новое дополнительное поле». Создание tv поляПоля, которые имеют любой ресурс (документ) MODX по умолчанию
  3. В открывшейся странице ввести имя дополнительному полю, например,
    authors
    . Данное поле будем использовать для хранения авторов книги. Создание TV-поля в MODX Revo (задание имени)Создание TV-поля в MODX Revo (задание имени)
  4. Перейти на вкладку «Параметры ввода» и указать необходимый формат данных, который будет определять тип значения, которое может быть помещено в этот TV параметр. Для TV переменной authors установим тип значения ввода, равный «текст».
  5. В секции «Параметры вывода» следует задать формат, в котором необходимо выводить данные из этого поля. Например, TV параметр authors будем выводить в формате текста. Для этого ему установим соответствующее значение в качестве значения параметра «Тип вывода».
  6. В разделе «Доступно для шаблонов» необходимо выбрать те шаблоны, через которые TV поле появится у соответствующих ресурсов. Процесс привязывания TV поля к ресурсам (через соответствующие шаблоны)Процесс привязывания TV поля к ресурсам (через соответствующие шаблоны)

Для примера создадим ещё несколько TV параметров: release-year (год выпуска), quantity-of-pages (количество страниц), cover-photo-book (фото обложки книги). Привяжем TV поля к тому же шаблону (например, шаблон книги).

Заполнение TV полей при создании или редактировании ресурсов

После создания TV полей они становятся доступными во время создания или редактирования соответствующих ресурсов. Располагаются TV-поля на страницах ресурсах по умолчанию во вкладке «Дополнительные поля».

Дополнительные поля, которые появились у ресурсов с установленным шаблоном «Книга»Дополнительные поля, которые появились у ресурсов с установленным шаблоном книга

Более удобного расположить TV поля на страницах определённых ресурсов можно с помощью инструмента MODX Revo «Настройка форм» (значок «Шестерёнка» в главном меню админки -> пункт «Настройка форм»).

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

Расположение TV переменных у ресурса, представление которого было настроено с помощью инструмента «Настройка форм»Расположение TV переменных у ресурса, представление которого было настроено с помощью инструмента, который называется настройка форм

Вывод TV (дополнительных полей)

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

Например, получим значение TV поля authors у текущего ресурса (в шаблоне):


[[*authors]]

Рассмотрим ещё один пример. В котором разберём, как можно с помощью сниппета pdoResources, организовать вывод всех дочерних ресурсов (по отношению к текущему ресурсу) вместе с их TV полями:


[[!pdoResources?
  &parents=`[[*id]]`
  &includeTVs=`authors,cover-photo-book,quantity-of-pages,release-year`
  &tpl=`@INLINE
    <h3><a href="[[~[[+id]]]]">[[+pagetitle]]</a></h3>
    <ul>
      <li>Автор(ы): [[+tv.authors]]</li>
      <li>Количество страниц: [[+tv.quantity-of-pages]]</li>
      <li>Год выпуска: [[+tv.release-year]]</li>
    </ul>
    <img src="/[[+tv.cover-photo-book]]" alt="Фото обложки книги [[+pagetitle]]">
  `
]]

То же самое действие, но уже с использованием сниппета getResources:


// вызов сниппета getResources
[[!getResources?
  &parents=`[[*id]]`
	&includeTVs=`1`
	&tpl=`book`
]]

// содержимое чанка book:
<h3><a href="[[~[[+id]]]]">[[+pagetitle]]</a></h3>
<ul>
  <li>Автор(ы): [[+tv.authors]]</li>
  <li>Количество страниц: [[+tv.quantity-of-pages]]</li>
  <li>Год выпуска: [[+tv.release-year]]</li>
</ul>
<img src="/[[+tv.cover-photo-book]]" alt="Фото обложки книги [[+pagetitle]]">
Вывод всех дочерних ресурсов (по отношению к текущему) вместе со значениями их TV-полейВывод всех дочерних ресурсов (по отношению к текущему) вместе со значениями их TV-полей

MODX — Использование в условии where TV переменных

Например, следующий код показывает, как можно выбрать книги (ресурсы), в зависимости от некоторого условия (поле автор должно содержать значение «Резиг»). Условия в сниппете pdoResources задаются с помощью параметра where.


[[!pdoResources?
  &parents=`[[*id]]`
  &includeTVs=`authors,cover-photo-book,quantity-of-pages,release-year`
  &tpl=`@INLINE
    <h3><a href="[[~[[+id]]]]">[[+pagetitle]]</a></h3>
    <ul>
      <li>Автор(ы): [[+tv.authors]]</li>
      <li>Количество страниц: [[+tv.quantity-of-pages]]</li>
      <li>Год выпуска: [[+tv.release-year]]</li>
    </ul>
    <img src="/[[+tv.cover-photo-book]]" alt="Фото обложки книги [[+pagetitle]]">
  `
  &where=`{"authors:LIKE":"%Резиг%"}`
]]

Сортировка ресурсов по TV полю

Для сортировки ресурсов в MODX Revo в зависимости от того какое значение имеет TV поле можно выполнить с помощью параметра сниппета pdoResources sortby.

Например, выведем книги по году выпуска (по убыванию):


[[!pdoResources?
  &parents=`[[*id]]`
  &includeTVs=`authors,cover-photo-book,quantity-of-pages,release-year`
  &tpl=`@INLINE
    <h3><a href="[[~[[+id]]]]">[[+pagetitle]]</a></h3>
    <ul>
      <li>Автор(ы): [[+tv.authors]]</li>
      <li>Количество страниц: [[+tv.quantity-of-pages]]</li>
      <li>Год выпуска: [[+tv.release-year]]</li>
    </ul>
    <img src="/[[+tv.cover-photo-book]]" alt="Фото обложки книги [[+pagetitle]]">
  `
  &sortby=`release-year`
  &sortdir=`DESC`
]]

Дополнительные поля MODX Revolution

Дополнительные поля

Дополнительные поля (Template Variable, коротко TV) употребляются для расширения атрибутов ресурса, которые доступны по умолчанию (к примеру, странички либо веб-ссылки). Обыкновенные ресурсы MODx располагают некоторой численностью установленных по умолчанию полей: заглавие (pagetitle), содержание (content), описание (description) и т.д. В случае если вам необходимо, вы можете прибавить определенные собственные поля к вашей страничке, к примеру, 2-ое поле содержания либо выпадающий список месяцев, либо другие иные пользовательские данные. Осуществляется данное путем прибавления добавочных полей к вашему шаблону. MODx дает возможность располагать фактически безграничной численностью дополнительных полей (TV). Для организации новейшего добавочного поля необходимо перейти по строчке «Дополнительные» на вкладке «Элементы» в окошке «Просмотр деревьев» (колонка с лева) и в выпадающем меню избрать пункт «Новое добавочное поле»:

Дополнительные поля в панели управления отмечаются рисунком телевизора, попросту согласно аббревиатуры TV.

Откуда появилось данное TV?

В английской версии MODx Revolution добавочные поля называются Template Variable, или же переменные шаблонов. Отчего при переводе интерфейса приняли решение именовать данный элемент дополнительным полем, я ответить не могу. Однако, сейчас вы знаете, откуда появилась аббревиатура TV — от Template Variable.В то время ресурс отражается в виде веб-странички, теги TV заменяются тем содержимым, каковое пользователь ввел в данное поле. Дополнительные поля считаются специфическими деталями для шаблонов, то есть имеют все шансы применяться лишь в шаблонах, в коих они определены.

Применение

Допустим, что мы организовали дополнительное поле с именем ‘bio’, которое представляет собой попросту кусочек текста. Мы связали его с шаблоном «Странички биографии» и желаем, чтобы данный кусок текста отражался на нашей страничке. Для того чтобы достичь данного, довольно расположить на нашей страничке тег:
<code>[[*bio]]</code>
Для того чтобы располагать возможностью применять дополнительное поле (TV) на вашей страничке, вы обязаны выбрать шаблоны, для которых доступно данное дополнительное поле, на вкладке «Доступно для шаблонов» (смотрите рис.):
Дополнительные поля могут располагать параметрами. К примеру создётся дополнительное поле с названием ‘intromsg’ с таким содержанием:
Hello [[+name]], you have [[+messageCount]] messages
У вас есть возможность задать определенные значения параметрам таким вызовом:
<code>[[*intromsg?name=`George` &messageCount=`123`]]</code>
В итоге вывод примет такой вид:
Hello George, you have 123 messages.
Фильтры вывода являются отличным инструментом, который может использоваться и к дополнительным полям. К примеру, вы хотите обусловить вывод дополнительного поля 100-ей символов. У вас есть возможность попросту применить фильтр вывода ‘limit’ :
<code>[[*bioMessage:limit=`100`]]</code>

Все о компьютерах — Создание и использование дополнительных полей MODx Revolution

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

Дополнительные поля являются просто полями, которые добавляются к вашему документу, и имеют такой же синтаксис как и поля по умолчанию: [[*имя_поля]] 

Перейдем во вкладку «Элементы» и создадим «Дополнительное поле» по тому же прицепу что и чанк или сниппет. Назовем его «Image» в поле «Имя», в поле «Заголовок» опишем его для нашего понимания его. Остальное нас пока не интересует.

Далее перейдем во вкладку «Параметры ввода» и в ней изменим «Тип ввода» на «Изображение».

И последнее что нам нужно будет сделать при создании Дополнительного поля, находится во вкладке «Доступно для шаблонов». Напротив «BootstrapTemplate» втавим галочку доступа и жмем на кнопку Сохранить.

Использование Дополнительного поля

Отлично! Теперь заполним это поле с изображение. Перейдем к редактированию страницы любой страницы (например, к созданной ранее «Новости»), главное – нам нужно проверить какой шаблон подключен к этой странице. Если выбран не тот, к которому мы прикрепили дополнительное поле, измените на нужное. Перейдем на вкладку «Дополнительные поля» и в поле «Image» нажмем на иконку изображения и выберите изображение из каталога. 

Но в нашем новом проекте его нет, т.ч. скопируйте любое изображение в любую папку assets. Либо загрузите через открывшееся окно браузера. Выберите папку и нажмите на иконку «Загрузить файлы» -> «Выбирите файл(ы)» -> «Загрузить» -> «ОК».

После того как Вы нажали на кнопку ОК поле «Image» заполнилось и появилосьуменьшенное изображение. Не забудьте сохранить изменения нажав кнопку Сохранить.

Теперь давайте отобразим это изображение в теле нашей «Новости». Для этого внизу «Содержимое ресурса» уберите галочку «Toggle Editor» и вставьте код:

<img src="[[*Image]]">

После сохранения страницы, перейдите на ее просмотр. Если Вы увидели ваше изображение, то сделали все правильно! На этом ознакомление с Дополнительными полями MODx Revolution.

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

MODX Revo: создание дополнительного поля TV

WEB-студия » Полезное » MODX Revo: создание дополнительного поля TV

Разберём и научимся использовать TV в MODX Revo.

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

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

Пример работы, миниатюра статьи

Рассмотрим простое использование, создадим TV (миниатюру изображения) для ресурсов — статей, которые будет выводиться в рубрику.

1. Для начала создадим наше TV, для этого во вкладке «Элементы» создадим дополнительное поле.

2. На первой вкладке указываем имя, его мы будем использовать для вывода.

3. Далее заходим во вкладку «Параметры ввода» и здесь мы указываем в каком формате мы будем записывать наше tv. Выберем изображение, тем самым при создании, мы сможем через диспетчер файлов загружать и выбирать изображения.

4. Заходим в пункт «Параметры вывода», где мы будем выбирать, в каком формате будем выводить наше tv. Указываем текст и при выводе мы будем получать адрес на наше изображение, к примеру: images/img.jpg.

5. Заходим во вкладку «Доступно для шаблонов» и и выбираем шаблон для наших статей. Вы сможете писать tv во всех записях, у которых выбран данный шаблон.

6. Наше дополнительное поле создано, сохраняем его.

7. Заходим в редактирование нашего ресурса (шаблон которого мы указали выше) и переходим в новую вкладку «Дополнительные поля», где у нас появляется наше поле.

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

8. Сохраняем запись, теперь мы сможем вывести наше изображение, как в самой статье, так и в рубрике.

9. Чтобы вывести в самой статье, заходим в шаблон статей и в нужном месте вызываем миниатюру:


<img src="[[*image]]" alt=""/>

Теперь в каждой статье будет выводиться изображение, где заполнено дополнительное поле.

Оригинал статьи: https://daruse.ru/tv-v-modx-sozdanie-i-ispolzovanie

pdoField — получение и вывод полей родителя (ей)

Получение и вывод полей родителя (ей) при помощи pdoFieldMODX Revo

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

Довольно часто требуется получить и вывести поля родителей и сегодня мы разберемся в том, как это сделать при помощи сниппета pdoField, который входит в состав компонента PdoTools. Данный сниппет в отличии от его аналогов UltimateParent и getResourceField имеет все их возможностями — выводит как любые поля указанного документа или его родителя, так и их переменные (ТВ параметры). Ко всему этому он может работать с документами в любых контекстах и при выборке есть можно указать доп. параметры, это позволяет к примеру: можно у скрытых ресурсов не выводить поля. А, если указать параметр &class, то возможно получить любое поле объекта Модх. И pdoField можно вызывать как фильтр вывода, подробнее про фильтры можно почитать здесь: docs.modx.pro/sistema/osnovyi/filtryi-vvoda-i-vyivoda

Параметры

pdoField принимает основные параметры помпонента pdoTools (смотри docs.modx.pro/komponentyi/pdotools/obshhie-parametryi) и немного своих:

Параметры pdoField

Внимание. pdoField не поддерживает работу с чанками.
Стоит обратить внимание: Если указаны параметры &topLevel или &top, а параметр &context нет, тогда будет сделан доп. запрос в БД (чтобы определить контекст).

Примеры

Вызываем как фильтр вывода:

[[*id:pdofield=`pagetitle`]]

Так же можно указывать параметры при помощи JSON массива . Например, выбираем 2-го родителя ресурса и выводим его «pagetitle»:

[[*id:pdofield=`{"top":2,"field":"pagetitle"}`]]

или тоже самое обычным вызовом (рекомендуется, так как это удобнее и быстрее):

[[pdoField? &id=`[[*id]]` &field=`longtitle` &top=`2`]]

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

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