Рендеринг контента в ezpublish 5 через ez_content:viewLocation без настроек или правил соответствия
Использование ezpublish 2014.11 Я хотел бы отобразить местоположение, используя это:
{{ render( controller("ez_content:viewLocation", { "locationId": location.id, "viewType":"myview" } )) }}
С одинаковым шаблоном для каждого контента.
Другими словами, я не хочу определять правила соответствия в ezpublish.yml
как это:
myview:
myview:
template: AirplAirplEzBundle::myview.html.twig
match:
Identifier\ContentType: [my_type]
И если возможно, я не хочу никакой конфигурации вообще.
Есть ли какое-то расположение для просмотра шаблона по умолчанию, куда я могу поместить свой шаблон веточки, чтобы они могли быть доступны ez_content:viewLocation
только на основе viewType?
Если нет, есть ли способ иметь конфигурацию шаблона без соответствия правилам?
2 ответа
Вам понадобится соответствующая конфигурация, если вы хотите использовать ez_content:viewLocation
, но вы можете оставить match
пустая часть, которая гарантирует, что правило всегда будет применяться:
myview:
myview:
template: AirplAirplEzBundle::myview.html.twig
match: ~
Убедитесь, что это правило является последним в списке для myview
тип представления, так как применяется первое правило, которое соответствует сверху вниз.
Вы можете перезаписать "ez_content:viewLocation" для сопоставления с другим сервисом.
По сути, вы можете перезаписать параметр-класс для службы ez_content и расширить старый класс своим собственным новым классом. В вашем новом классе вам нужно будет только определить метод "viewLocation" и реализовать любое отображение, которое вам может потребоваться.
Более чистым способом было бы добавить все идентификаторы классов к одному сопоставителю. Таким образом, у вас есть больше контроля, если вы хотите получить другой шаблон однажды.
Надеюсь это поможет.