Как создать новый шаблон

Этот урок проведет Вас через процесс создания нового шаблона для приложения компонента ZOO.

Начнем

Все шаблоны расположены в папке /media/zoo/applications/APPLICATION/templates/TEMPLATE/. Метаданные и параметры шаблона можно найти в файле template.xml. Актуальные файлы шаблона для представлений называются item.php, category.php, frontpage.php, tag.php и alphaindex.php. Большинство шаблонов имеют также папку renderer. В ней Вы найдете макеты материала, которые указывают на то, как материал должен отображаться. Также Вы можете найти здесь файлы кастомных элементов. Давайте посмотрим на существующий шаблон, чтобы иметь представление о структуре папок шаблона.

Разбирая по деталям

Давайте создадим шаблон demo . Для этого создайте папку: /media/zoo/applications/APPLICATION/templates/demo/ Затем создайте файл template.xml: <?xml version="1.0" encoding="utf-8"?>
<template>
<name>Demo</name>
<version>2.0.0</version>
<creationDate>April 2010</creationDate>
<author>John Doe</author>
<authorEmail>john @ doe.com</authorEmail>
<authorUrl>www.johndoe.com</authorUrl>
<copyright>YOUR COPYRIGHT DISCLAIMER</copyright>
<license></license>
<description>This is my demo template</description>
<params group="category"></params> <params group="item"> </params>
</template>

После этого создадим файлы шаблона для представлений: представление материала - item.php, представление категории - category.php, представление главной страницы приложения - frontpage.php, представление тегов - tag.php и представление буквенного индекса - alphaindex.php. Затем Вы должны написать некоторый код в эти файлы. Каждое представление будет иметь определенный набор переменных, заполненных значениями.

Все представления

  • $this - Это текущий объект View.
  • $this->application - Это текущий объект Application.
  • $this->template - Это объект Template.
  • $this->params - Это объект Params, содержащий параметры сайта.

item.php

  • $this->item - Это объект Item.
  • $this->renderer - Это объект Renderer, необходимый для отображения материала.

category.php

  • $this->category -Это объект Category.
  • $this->items - Это массив, содержащий объекты Item, которые опубликованы в этой категории.

frontpage.php

  • $this->category - Это объект Category, содержащий корневую категорию.
  • $this->items -Это массив, содержащий объекты Item, которые опубликованы на главной странице приложения.

tag.php

  • $this->tag - Это объект Tag.
  • $this->items - Это массив, содержащий объекты Item, которые обозначены по выбранному тегу.

alphaindex.php

  • $this->alpha_char - Это строка, содержащая выбранные буквенные символы.
  • $this->selected_categories - Это массив, содержащий объекты Category, включающий в себя выбранные категории.
  • $this->items - Это массив, содержащий объекты Item.
Эти переменные обеспечивают Вас всей информацией, необходимой для создания хорошего шаблона. Чтобы отобразить материал в его представлении, Вы можете использовать рендер материала. Вызов функции может выглядить следующим образом:
$this->renderer->render('item.full', array('view' => $this, 'item' => $this->item);
Первый параметр для функции render это макет. Второй параметр  это массив, содержащий аргументы для функции render. Нам необходимо обеспечить представление и материал.

Заключение

Этот урок проведет Вас через процесс создания нового шаблона для приложения компонента ZOO. Как обычно бывает, Вы можете изучить существующие шаблоны и на их основе создать свой собственный, неповторимый стиль.
  • Суббота, 03 января 2015

Оставить комментарий

Вы комментируете как Гость.