Иерархия шаблона Demomarket — различия между версиями

Материал из Umicms
Перейти к:навигация, поиск
(Отмена правки 9281, сделанной Aposio (обсуждение))
(Метка: отмена)
(Комментарии)
 
(не показано 5 промежуточных версий этого же участника)
Строка 21: Строка 21:
 
<li>Меню в мобильной версии(layout/header/mobile_menu.phtml)</li>  
 
<li>Меню в мобильной версии(layout/header/mobile_menu.phtml)</li>  
 
<li>Верхний ряд шапки сайта - меню основных страниц(layout/header/top/index.phtml)</li>  
 
<li>Верхний ряд шапки сайта - меню основных страниц(layout/header/top/index.phtml)</li>  
<li>Средний ряд шапки сайта - блок с логотипом, форма "Заказать звонок", режим работы, корзина товаров. (layout/header/middle/index)</li>
+
<li>Средний ряд шапки сайта - блок с логотипом, форма "Заказать звонок", режим работы, корзина товаров. (layout/header/middle/index.phtml)</li>
<li>Нижний ряд в шапке сайта - меню каталога товаров, форма поиска, блок с кнопкой сравнения товаров и входа на сайт/панель управления пользователя. (layout/header/bottom/index)</li>
+
<li>Нижний ряд в шапке сайта - меню каталога товаров, форма поиска, блок с кнопкой сравнения товаров и входа на сайт/панель управления пользователя. (layout/header/bottom/index.phtml)</li>
 
</ul>
 
</ul>
 +
 
=====Основной контент страницы=====
 
=====Основной контент страницы=====
 
Вывод основного контента страницы располагается в файле /templates/demomarket/php/layout/main.phtml. Здесь происходит назначение шаблона для вывода ошибок, настройка роутинга для работы по принципу модуль/метод.
 
Вывод основного контента страницы располагается в файле /templates/demomarket/php/layout/main.phtml. Здесь происходит назначение шаблона для вывода ошибок, настройка роутинга для работы по принципу модуль/метод.
Строка 45: Строка 46:
 
Вывод данных для функционала каталога находится в папке catalog.  
 
Вывод данных для функционала каталога находится в папке catalog.  
 
<ul>
 
<ul>
<li>Для вывода категорий каталога используется файл category.phtml. </li>
+
<li>Категория каталога - category.phtml. </li>
<li>Для вывода страницы товара используется файл object.phtml.</li>
+
<li>Страница товара - object.phtml.</li>
<li>Для вывода превью товара используются шаблона в папке /product/preview</li>
+
<li>Для вывода превью товара используются шаблоны в папке /product/preview</li>
 
<li>Для вывода полной карточки товара используются шаблона в папке /product/main</li>
 
<li>Для вывода полной карточки товара используются шаблона в папке /product/main</li>
 
</ul>
 
</ul>
 +
 
====Комментарии====
 
====Комментарии====
 
Вывод данных для функционала комментариев находится в папке comments.  
 
Вывод данных для функционала комментариев находится в папке comments.  
 
<ul>
 
<ul>
<li>Для вывода страницы комментария используется файл comment.phtml </li>
+
<li>Cтраница комментария - comment.phtml </li>
<li>Для вывода списка комментариев с пагинацией используется файл insert.phtml.</li>
+
<li>Спискок комментариев с пагинацией - insert.phtml.</li>
 
<li>В папке comments/comment находятся файлы для отображения формы добавления нового комментария(new.phtml) и для превью комментария(preview.phtml)</li>
 
<li>В папке comments/comment находятся файлы для отображения формы добавления нового комментария(new.phtml) и для превью комментария(preview.phtml)</li>
 
</ul>
 
</ul>
 +
 
====Контент====
 
====Контент====
 
Вывод данных для функционала комментариев находится в папке content.  
 
Вывод данных для функционала комментариев находится в папке content.  
Строка 79: Строка 82:
 
<li>Страница отписки от рассылки - subscribe.phtml</li>
 
<li>Страница отписки от рассылки - subscribe.phtml</li>
 
</ul>
 
</ul>
====emarket====
+
====Интернет-магазин====
 +
Весь функционал, связанный с интернет-магазином, описан в папке emarket.
 +
<ul>
 +
<li>Корзина товаров - cart.phtml. Все элементы, связанные с корзиной товаров, выводятся по отдельным шаблонам, расположенным в папке cart.</li>
 +
<li>Страница сравнения товаров - compare.phtml. Все элементы, связанные со сравнением товаров, выводятся по отдельным шаблонам, расположенным в папке compare.</li>
 +
<li>Старая цена товара - old_price.phtml.</li>
 +
<li>Вывод списка заказов пользователя - ordersList.phtml.</li>
 +
<li>Страница личного кабинета покупателя - personal.phtml.</li>
 +
<li>Оформление заказа по шагам - purchase.phtml.</li>
 +
<li>Оформление заказа в один шаг - purchasing_one_step.phtml.</li>
 +
<li>Прогресс-бар с шагами оформления заказа - steps.phtml.</li>
 +
</ul>
 +
 
 
====FAQ====
 
====FAQ====
 
В папке faq содержится функционал "Вопрос-ответ" на сайте.
 
В папке faq содержится функционал "Вопрос-ответ" на сайте.
Строка 113: Строка 128:
 
<li>Альбом с фотографиями - album.phtml</li>
 
<li>Альбом с фотографиями - album.phtml</li>
 
<li>Страница фотографии - photo.phtml</li>
 
<li>Страница фотографии - photo.phtml</li>
<ul>
+
</ul>
 
====Поиск====
 
====Поиск====
 
Функционал вывода данных поиска по сайту расположен в папке search.
 
Функционал вывода данных поиска по сайту расположен в папке search.
Строка 119: Строка 134:
 
<li>Результаты поиска - result.phtml</li>
 
<li>Результаты поиска - result.phtml</li>
 
<li>Страница с результатами поиска - search_do.phtml</li>
 
<li>Страница с результатами поиска - search_do.phtml</li>
<ul>
+
</ul>
 
====Пользователи====
 
====Пользователи====
 
Функционал вывода данных для пользователя на сайте находится в папке users.
 
Функционал вывода данных для пользователя на сайте находится в папке users.
Строка 125: Строка 140:
 
<li>Подробную информацию о том, за что отвечает каждый файл в этой папке, вы можете получить из комментариев в начале каждого файла.</li>
 
<li>Подробную информацию о том, за что отвечает каждый файл в этой папке, вы можете получить из комментариев в начале каждого файла.</li>
 
<li>В папке login_do находятся шаблоны для вывода результата попытки входа на сайт</li>
 
<li>В папке login_do находятся шаблоны для вывода результата попытки входа на сайт</li>
<ul>
+
</ul>
 
====Опросы====
 
====Опросы====
 
Вывод опросов на сайте описан в папке vote. Здесь находится
 
Вывод опросов на сайте описан в папке vote. Здесь находится
Строка 135: Строка 150:
 
<li>Шаблон обработки результата макроса установки рейтинга - setElementRating.phtml</li>
 
<li>Шаблон обработки результата макроса установки рейтинга - setElementRating.phtml</li>
 
<li>Вывод опроса или его результата - show_vote.phtml</li>
 
<li>Вывод опроса или его результата - show_vote.phtml</li>
<ul>
+
</ul>
 
====Обратная связь====
 
====Обратная связь====
 
Функционал форм обратной связи описан в папке webforms.
 
Функционал форм обратной связи описан в папке webforms.
Строка 145: Строка 160:
 
</ul>
 
</ul>
  
 +
===Языковые константы ===
 +
Используемые в решении языковые константы расположены в папке i18n
 
  [[category:Вопросы и уроки разработки сайтов на UMI.CMS]]
 
  [[category:Вопросы и уроки разработки сайтов на UMI.CMS]]

Текущая версия на 14:16, 28 июня 2019

Актуально для версии 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.phtml)
  • Нижний ряд в шапке сайта - меню каталога товаров, форма поиска, блок с кнопкой сравнения товаров и входа на сайт/панель управления пользователя. (layout/header/bottom/index.phtml)
Основной контент страницы

Вывод основного контента страницы располагается в файле /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.

  • Cтраница комментария - 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 находятся вспомогательные файлы для вывода данных форм.

Языковые константы

Используемые в решении языковые константы расположены в папке i18n