Skip to content
YandexMaps2
YandexMaps2
Конструктор Яндекс Карт для любых объектов, работа с mFilter2
  1. Компоненты
  2. YandexMaps2

Выводим данные родительского ресурса в балунах

У любого объекта на карте в плейсхолдере {$data} хранится массив данных этого объекта. Если в балуне прописать что-то вроде {$data | print}, то на фронт-энде мы получим примерно такую картину:

php
Array
(
  [parent] => 13
  [class] => modDocument
  [list] => default
)

Здесь нас интересует элемент parent, который содержит ID объекта родителя. Кстати, класс modDocument означает принадлежность родителя к ресурсам.

Вот таким образом в балуне можно вывести pagetitle родительского ресурса объекта:

fenom
{$data.parent | resource : 'pagetitle'}

Давайте представим, что нам надо в каком-то универсальном чанке, который вызывается на многих ресурсах с картой, вывести сниппет карты. Помимо этого, если текст в балунах у объектов на карте не заполнен, вывести там название родительского ресурса и какое-то TV поле. Вызов по заданным параметрам будет выглядеть примерно так:

fenom
{'!YandexMaps2' | snippet : [
  'class' => 'modDocument',
  'parent' => $_modx->resource.id,
  'defaultBalloonContent' => '
    <div><b>pagetitle</b>: {$data.parent | resource : "pagetitle"}</div>
    <div><b>tv</b>: {$data.parent | resource : "name_of_tv"}</div>
  ',
]}

Тоже самое можно проделывать и с выводом карты через mFilter2.