Иерархия шаблона Demomarket

Материал из Umicms
Перейти к:навигация, поиск

Актуально для версии 20

Цель

Описать иерархию шаблона Demomarket, т.к. довольно часто имеется необходимость отредактировать те или иные данные, что бывает сложно для пользователя, не знакомого с иерархической структурой шаблона.

Описание

Все файлы шаблона, ответственные за визуальное отображение тех или иных элементов, находятся в папке templates/demomarket/php.

Базовый функционал шаблона

Точка входа в шаблон

"Построение" скелета сайта начинается с файла common.phtml, в нём происходит инициализация общих переменных (глобальный массив $variables) и этот файл является точкой входа в шаблон.

Скелет сайта

Скелет сайта - head, body, header и footer строится в файле templates/demomarket/php/layout/index.phtml. Здесь осуществляется вызов отрисовки перечисленных нами блоков.

Содержимое тега <head>

Содержимое тега <head> располагается в файле /templates/demomarket/php/layout/head.phtml. Здесь происходит проставление мета-тегов, подключение различных скриптов и стилей.

Содержимое тега <header>

Содержимое тега <header> располагается в файле /templates/demomarket/php/layout/header/index.phtml. Здесь происходит вызов отображения:

  • Всех всплывающих окон на сайте(layout/modal/index.phtml)
  • Шапка сайта в мобильной версии(layout/header/mobile.phtml)
  • Меню в мобильной версии(layout/header/mobile_menu.phtml)
  • Верхний ряд шапки сайта - меню основных страниц(layout/header/top/index.phtml)
  • Средний ряд шапки сайта - блок с логотипом, форма "Заказать звонок", режим работы, корзина товаров. (layout/header/middle/index)
  • Нижний ряд в шапке сайта - меню каталога товаров, форма поиска, блок с кнопкой сравнения товаров и входа на сайт/панель управления пользователя. (layout/header/bottom/index)
Основной контент страницы

Вывод основного контента страницы располагается в файле /templates/demomarket/php/layout/main.phtml. Здесь происходит назначение шаблона для вывода ошибок, настройка роутинга для работы по принципу модуль/метод.

Содержимое тега <footer>

Вывод содержимого тега <footer> располагается в файле /templates/demomarket/php/layout/footer/index.phtml. Здесь происходит вывод визуального оформления подвала сайта для десктопной и мобильной версий шаблона.

Обработка методов системы

Благодаря роутингу модуль/метод, который мы настроили в основном контенте страницы, вывод каждого результата нашего запроса будет обеспечен соответствующим файлом. Например, если мы переходим в модуль Каталог(/catalog/) - автоматически вызывается метод category. В таком случае для того, чтобы у нас что-то вывелось на сайте, нужна папка catalog, в которой будет существовать соответствующий файл для вывода результатов работы метода - category.phtml.

Онлайн-запись(Услуги)

Вывод данных для функционала онлайн записи находится в папке appointment. Здесь имеется единственный файл page.phtml, в котором и реализован весь вывод.

Блоги

Вывод данных для функционала блогов находится в папке blogs20. Здесь располагаются

  • Страница блога - blog.phtml
  • Комментарй к посту блога - comment.phtml
  • Пост блога - post.phtml
  • В папках post и comments находятся дополнительные файлы для вывода результатов обработки функционала комментариев и постов блога.

Каталог

Вывод данных для функционала каталога находится в папке catalog.

  • Для вывода категорий каталога используется файл category.phtml.
  • Для вывода страницы товара используется файл object.phtml.
  • Для вывода превью товара используются шаблона в папке /product/preview
  • Для вывода полной карточки товара используются шаблона в папке /product/main

Комментарии

Вывод данных для функционала комментариев находится в папке comments.

  • Для вывода страницы комментария используется файл comment.phtml
  • Для вывода списка комментариев с пагинацией используется файл insert.phtml.
  • В папке comments/comment находятся файлы для отображения формы добавления нового комментария(new.phtml) и для превью комментария(preview.phtml)

Контент

Вывод данных для функционала комментариев находится в папке content.

  • Вывод страницы контента - content.phtml. Вывод страницы по умолчанию обрабатывается по отдельному шаблону content/home/index
  • Вывод страницы 404 - notfound.phtml
  • Карта сайта - sitemap.phtml
  • В папке sitemap находятся вспомогательные файлы для вывода карты сайта.
  • В папке home находятся все необходимые шаблоны отображения для контента главной страницы сайта. Более подробную информацию о том, за что отвечает каждый файл, вы можете получить в комментарии, который расположен в начале каждого файла.

Формы

В папке data находятся файлы для отображения форм на сайте.

  • Отрисовка каждой группы формы и каждое поле группы в зависимости от типа данных - form.phtml.
  • В папке form_field находятся файлы для отображения того или иного типа поля формы.

Рассылки

Вывод данных для функционала рассылок находится в папке dispatches.

  • Страница подписки на рассылку - subscribe.phtml
  • Страница результата подписки на рассылку - subscribe_do.phtml
  • Страница отписки от рассылки - subscribe.phtml

Интернет-магазин

Весь функционал, связанный с интернет-магазином, описан в папке emarket.

  • Корзина товаров - cart.phtml. Все элементы, связанные с корзиной товаров, выводятся по отдельным шаблонам, расположенным в папке cart.
  • Страница сравнения товаров - compare.phtml. Все элементы, связанные со сравнением товаров, выводятся по отдельным шаблонам, расположенным в папке compare.
  • Старая цена товара - old_price.phtml.
  • Вывод списка заказов пользователя - ordersList.phtml.
  • Страница личного кабинета покупателя - personal.phtml.
  • Оформление заказа по шагам - purchase.phtml.
  • Оформление заказа в один шаг - purchasing_one_step.phtml.
  • Прогресс-бар с шагами оформления заказа - steps.phtml.

FAQ

В папке faq содержится функционал "Вопрос-ответ" на сайте.

  • Страница категории в модуле FAQ - category.phtml
  • Страница успешно заданного вопроса = post_question.phtml
  • Страница проекта в модуле FAQ - project.phtml
  • Страница вопроса - question.phtml
  • В папках question и category находятся вспомогательные файлы для вывода категорий вопросов и вопросов

Файловый менеджер

В папке filemanager находится функционал для работы с файлами на сайте. Здесь имеется единственный шаблон для страницы скачиваемого файла - shared_file.phtml.

Форум

В папке forum располагается функционал форума на сайте.

  • Конференция форума - conf.phtml
  • Страница сообщения в топике форума - message.phtml
  • Топик форума - topic.phtml
  • В папках message и topic содержатся вспомогательные файлы для вывода сообщений и тем форума.

Новости

Весь функционал отображения новостей на сайте находится в папке news.

  • Страница новости - item.phtml
  • Лента новостей - rubric.phtml
  • Превью новости в ленте - rubric_item.phtml
  • В папке item находятся вспомогательные файлы для вывода элементов новости.

Фотоальбом/Фотогалерея

Функционал фотогалереи на сайте находится в папке photoalbum. Здесь имеются только два файла:

  • Альбом с фотографиями - album.phtml
  • Страница фотографии - photo.phtml
    • Поиск

      Функционал вывода данных поиска по сайту расположен в папке search.

      • Результаты поиска - result.phtml
      • Страница с результатами поиска - search_do.phtml
        • Пользователи

          Функционал вывода данных для пользователя на сайте находится в папке users.

          • Подробную информацию о том, за что отвечает каждый файл в этой папке, вы можете получить из комментариев в начале каждого файла.
          • В папке login_do находятся шаблоны для вывода результата попытки входа на сайт
            • Опросы

              Вывод опросов на сайте описан в папке vote. Здесь находится

              • Вывод блока отзывов о товаре - element_rating.phtml
              • Формы опроса - form.phtml
              • Вывода опроса/его результатов - poll.phtml
              • Результаты опроса - result.phtml
              • Шаблон обработки результата макроса установки рейтинга - setElementRating.phtml
              • Вывод опроса или его результата - show_vote.phtml
                • Обратная связь

                  Функционал форм обратной связи описан в папке webforms.

                  • Форма всплывающего окна "Заказать звонок" - callback.phtml
                  • Страница формы обратной связи - page.phtml
                  • Страница с сообщением об успешно отправленной форме - posted.phtml
                  • В папке page находятся вспомогательные файлы для вывода данных форм.