1. Доступ к загрузкам имеют пользователи со статусом КЛИЕНТЫ (заказчики сайта)
    Для обновления одного шаблона необходимо оплатить услугу Техническая поддержка (500 руб. - Яндекс-деньги или банковский перевод) модуль справа-внизу, сообщить {admin_forum} контактный e-mail
  2. У наших подписчиков ВКонтакте появилась возможность скачать первую версию любого шаблона для ознакомления абсолютно бесплатно. Вступаем и заказываем нужный шаблон на странице группы - https://vk.com/yootheme
    Скрыть объявление

Шаблоны материалов JBZoo. Рекомендации, краткий обзор

Тема в разделе "FAQ по JBZoo", создана пользователем admin_forum, 4 ноя 2013.

  1. admin_forum
    Оффлайн

    admin_forum Администратор Команда форума

    Краткое но емкое описание где и как правильно редактировать шаблоны материалов JBZoo

    Обязательно прочитайте статью Основные принципы и понятия при кастомизации JBZoo

    Где лежат шаблоны ?
    Сначала будет попытка найти индивидуальный шаблон материала
    media\zoo\applications\jbuniversal\templates\catalog\renderer\item\<ПСЕВДОНИМ ТИПА МАТЕРИАЛА>\

    По умолчанию шаблоны берутся отсюда (шаблоны в этой папке лежат как рабочий пример, лучше использовать вариант выше)
    media\zoo\applications\jbuniversal\templates\catalog\renderer\item\

    Какой файл за что отвечает?
    Шаблоны

    compare.php - Сравнение товаров (должен быть пустой)
    feed.php - Текст описания для RSS
    full.php - Детальная страница материала
    related.php - Связанные материалы (по умолчанию)
    subcategory_item.php - Если материал отображается как элемент подкатегории
    submission.php - Шаблон формы подачи материалов
    teaser.php - Если материал отображается как элемент категории

    Системные файлы

    metadata.xml - название шаблонов и его описание. Отображается в панели управления.
    positions.config - Файл хранит настройки всех позиций для всех шаблонов всех типов материалов BZoo. Изменения его на свой страх и риск. Этим занимается сам Zoo и JBZoo.
    positions.xml - описание всех позиций для всех шаблонов (подробнее смотрите ниже).
    index.html - стандартная заглушка Joomla на случай если htaccess не работает.

    Принцип работы шаблона
    Каждый шаблон материала Zoo должен в себе содержать только основную разметку, детали дизайна, возможно какой-то общий текст. В разметку включаются позиции, в которые потом вставляются необходимые элементы. Это как раз то что вы настраиваете в панели управления.

    Вывод позиции в шаблоне выглядит следующим образом (проверка на пустоту и вывод если есть что показать).


    Позиции и их стили

    Код:
    <?php if ($this->checkPosition('position-name')) : ?>
        <ul><?php echo $this->renderPosition('position-name', array('style' => 'list')); ?></ul>
    <?php endif; ?>
    array('style' => 'list') - это необязательный аргумент, через который можно указать стиль вывода каждого элемента
    Доступны следующие стили
    default - По умолчанию, выводится как есть, не обязательно указывать
    block - Обрамление тегами <div>
    comma - Обрамление тегами <span> и разделение через ","
    hyphen - Разделение через короткое тире (минус)
    inline - Обрамление тегами <span>
    list - Обрамление тегами <li> для создания списка
    paragraph - Обрамление тегами <p> для создания параграфов
    pipe - Разделение через символ "|"
    submission.block - Обязательно указывать для позиций формы подачи материалов

    Как добавит свой стиль для элементов позиции
    Примеры можно найти тут components\com_zoo\renderer\element\
    Свои файлы можете положить тут, тогда они не изменятся и не сотрутся при обновлении
    media\zoo\applications\jbuniversal\templates\catalog\renderer\element\


    Как добавить свою позицию в шаблон
    Это лучше делать в индивидуальном шаблоне материала.
    Откройте файл
    media\zoo\applications\jbuniversal\templates\catalog\renderer\item\<ПСЕВДОНИМ ТИПА МАТЕРИАЛА>\positions.xml

    Тут вы увидите следующее

    Код:
    <?xml version="1.0" encoding="utf-8"?>
    <renderer>
       <positions layout="full">  <!-- начало блока шаблона full, описание его позиций -->
          <position name="title">Title</position> <!-- Системное название позиции задается в атрибуте name, в теге указывается имя позиции для панели управления -->
          <position name="image">Image</position>
            <position name="company">Company</position>
          <position name="list">List</position>
          <position name="text">Text</position>
       </positions>
       <positions layout="related"> <!-- Тоже самое, но указывается что шаблон можно использовать для связных элементов -->
          <position name="title">Title</position>
          <position name="photo">Photo</position>
            <position name="rating">Rating</position>
          <position name="contacts">Contacts</position>
       </positions>
    </renderer>
    
    Измените позиции на свое усмотрение

    Вставьте код позиции в шаблон, например так

    Код:
    <?php if ($this->checkPosition('position-name')) : ?>
        <?php echo $this->renderPosition('position-name'); ?>
    <?php endif; ?>
    Зайдите в панель управления и перетащите на нужную позицию свои элементы.
    Каждый элемент может иметь свои настройки рендеринга.

    Как изменять файл metadata.xml
    media\zoo\applications\jbuniversal\templates\catalog\renderer\item\<ПСЕВДОНИМ ТИПА МАТЕРИАЛА>\metadata.xml

    Код:
    <?xml version="1.0" encoding="utf-8"?>
    <metadata>
       <layout name="full"> <!-- типа шаблона, d fnhb,etn -->
          <name>Full</name> <!-- Имя шаблона для панели управления -->
          <description>Full layout</description> <!-- Описание шаблона для панели управления -->
       </layout>
    
       <layout name="teaser" type="related"> <!-- тоже самое, в атрибуте type можно указать особенность использования шаблона (related, feed, submission, compare) -->
          <name>Teaser</name>
          <description>Teaser layout</description>
       </layout>
    </metadata>
    
     
  2. Тимур Гайнуллин
    Оффлайн

    Тимур Гайнуллин Новичок

    как сделать шаблон для вывожа контента типа:
    HTML:
    <h1>Титл</h1>
    <h3>Содержание статьи:<h3/>
    <ul>
          <li><a href="#1">Подзаголовок_1</a></li>
          <li><a href="#2">Подзаголовок_2</a></li>
          <li><a href="#3">Подзаголовок_N</a></li>
    </ul>
    
    <a name="1"><h2>Подзаголовок_1</h2></a>
    <div>Текст_1</div>
    <a name="2"><h2>Подзаголовок_2</h2></a>
    <div>Текст_2</div>
    <a name="3"><h2>Подзаголовок_N</h2></a>
    <div>Текст_N</div>
     

Поделиться этой страницей