Печать

Структура шаблонов компонента материалов - com_content

Рассмотрим все заложенные возможности шаблона стандартных материалов компонента com_content. Для примера можно взять содержимое папки \templates\beez\html\com_content\ и положить в свой шаблон.

Содержимое данного каталога представлено в виде 4-х папок с соответствующими шаблонами представлений

  • article
    • default.php - - собственно оконечная страница материала (view=article), отрабатывает плагины на событие afterDisplayContent
    • form.php - стандартная форма добавления материала с фронтенда
  • category
    • blog.php - материалы категории в формате блога как бы общий каркас (view=category&layout=blog): описание категории, разбиение на колонки, ссылки типа "еще", постраничная навигация
    • blog_item.php - связан напрямую с blog.php - показывает непосредственно элемент статьи формата блог: заголовок, даты, автор, вступительный текст, подробнее, отрабатывает плагины на событие afterDisplayContent
    • blog_links.php - связан напрямую с blog.php, показывает ссылки типа "еще", по умолчанию в формате UL LI
    • default.php - список материалов категории (view=category): заголовок категории, описание, вывод материалов категории в виде таблицы
    • default_items.php - связан напрямую с default.php - формирует таблицу материалов (номер, заголовок, дата, хиты), фильтры над таблицей, постраничную навигацию
  • frontpage - шаблон только главной страницы, что работает по умолчанию
    • default.php - аналог category\blog.php
    • default_item.php - аналог category\blog_item.php
    • default_links.php - аналог category\blog_links.php
  • section
    • blog.php - материалы раздела в формате блога (view=section&layout=blog), аналогичен category\blog.php
    • blog_item.php - аналогичен category\blog_item.php, отображает каждый элемент блога раздела
    • blog_links.php - аналогичен category\blog_links.php, показывает ссылки типа "еще" в блоге раздела
    • default.php - стандартный шаблон раздела (view=section), показывает заголовок категории, описание, кол-во элементов. По нажатию на заголовок категории дальнейшая страница обрабатывается шаблоном category\default.php

Если каталог \templates\<my_template>\html\com_content\ отсутствует в шаблоне, значит отрабатывают оригинальные темплейты компонента, находится в components\com_content\views\<viewName>\tmpl. Существует еще дополнительный вид - архив. Он используется редко, работать с ним можно по аналогии.

Как нам добавить дополнительные данные к стандартному контенту?

Для этого нам необходимо работать с моделью, каталог com_content\models\, в нем 4 нужных нам файла

  • article.php
  • category.php
  • frontpage.php
  • section.php
  • archive.php

Название совпадает с названием вида (шаблона) по идеологии MVC. Напомним что модель занимается выборкой данных из базы данных. Таким образом, можно найти метод который отвечает за выборку из базы данных и изменить его на свое усмотрение. В данном случае это _buildQuery. 

Схема шаблонов компонента com_content

templates_1_8d26f9f273849c960787dcc5ebb4fc1d

Интересная статья? Поделись ей с другими: