Назад в библиотеку

Анализ назначения, структуры и инструментов построения шаблонов в современных cms системах

Автор: Р.С. Кутелёв, А.В. Григорьев
Источник: Донецкий национальный технический университет: Сборник материалов VI Международной научно-технической конференции Современные информационные технологии в образовании и научных исследованиях СИТОНИ-2019 – г. Донецк: ДонНТУ, 2019. – с.309–316,[Ссылка]

Аннотация: В статье рассмотрены современные CMS. Выполнен анализ назначения и методов построения шаблонов. Рассмотрены программы для работы с шаблонами.

Ключевые слова: CMS, сайт, шаблон, база знаний, структура.

Введение

Современные сайты ушли далеко вперед по сравнению с более простыми собратьями из прошлого десятилетия. Полноценный сайт с серьезным набором возможностей проблематично написать с нуля, поэтому программистам во многом помогает CMS, более известная как движок.

CMS — это система управления контентом, набор скриптов для создания, редактирования и управления контентом сайта. Примерами CMS являются WordPress, Joomla, PrestaShop.

Актуальность исследования шаблонов систем управления сайтом обусловлена необходимостью автоматизировать процесс работы с сайтом, создания и настройки сайта.

Цель исследования - анализ механизмов построения шаблонов и выявления перспектив развития интеллектуальных систем для создания шаблонов.

Обзор самых популярных CMS

Существует множество различных CMS: WordPress, Joomla, 1C Битрикс, Drupal, OpenCart, MODX , Magento, ImageCMS, TYPO3, Made Simple, Concrete5 . Рассмотрим самые популярные из них.

WordPress - самая популярная и одна из самых мощных CMS в мире. Система обычно используется для создания блогов и информационных порталов, но с помощью плагинов на нём можно построить хоть интернет- магазин [1].

Joomla - вторая по популярности CMS. Универсальная система, функциональность которой расширяется с помощью плагинов. Это позволяет использовать ее для создания самых разных сайтов: от простых визиток до больших информационных ресурсов с миллионной посещаемостью [2].

Drupal - Мощный инструмент, ориентированный на разработчиков и позволяющий создавать сложные сайты [3].

 

Drupal

Joomla

WordPress

Примеры сайтов, работаю- щих на CMS

 

 

Film.ru, dru.io, sbis.ru, nsportal.ru

 

Joomla.org, Rockettheme.com, ITWire.com, Thaindian.com

Sonymusic.com, Mercedes-

benz.com, Blog.us.playstation. com,

Thewaltdisneycompany.com, Techcrunch.comLifehacker.ru

 

Установка

Форум Drupal.ru

Открытая база знаний

Joomla

С чего начать — ru.wordpress.org

 

 

 

 

 

Простота использо- вания

 

 

 

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

Проще Drupal, сложнее WordPress. Относительно простая установка и настройка в совокупности с нетребовательностью к затратам времени на понимание структуры и терминологии дают возможность самостоятельно построить весьма сложный сайт

 

Технические знания в данном случае совсем не обязательны. WordPress простая и интуитивная. С ее помощью можно чрезвычайно быстро создать простой сайт.

Также WordPress привлекает возможностью без труда переносить текст из текстовых документов

на сайт, чем не могут похвастать Drupal и Joomla

 

 

 

Особенности

 

Система известна своей мощной таксономией и возможностями по разметке, категоризации и организации сложного контента

 

 

Система разрабатывалась в качестве платформы для сообществ с акцентом на социальные функции

Простота является ключевым преимуществом.

Многообразие в сочетании с обилием инструкций и простотой управления делают WordPress идеальной для технически не подготовленных пользователей

 

 

 

Плагины для кэширова ния

 

 

Pressflow — готовая сборка

Drupal,

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

производительности сайта

 

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

 

WP Super Cache — плагин, оптимизирующий производительность сайта путем генерации статичных HTML-файлов из получаемого из баз данных контента

 

 

Оптима- льные сценарии использо- вания

 

Комплексные продвинутые сайты, требующие сложной организации данных.

Платформы для больших сообществ, онлайн- магазины

 

Сайты с достаточно гибкой структурой, создание которой было бы проблематично из-за ограничений WordPress.

Электронная коммерция, социальные площадки

Блоги, новостные сайты и другие форматы, требующие наличия возможности быстро и легко добавлять контент.

При необходимости недостающая функциональность добавляется с помощью аддонов

Таблица 1. Сравнение популярных CMS

Обзор инструментальных средств CMS

Рассмотрим структура современных CMS на примере Joomla (рис. 1).

pic1

Рисунок 1 – Структура CMS Joomla [4] Joomla состоит из 3 основных уровней:

Верхний, Уровень расширений:

Средний, уровень Приложения. Основа этого уровня - абстрактный класс "JApplication", который расширяется за счет четырех основных классов:

Последний, уровень ядра - это не что иное как каркас нашей CMS:

Структура шаблонов существующих CMS

Структуру современных шаблонов рассмотрим на примере Joomla и Drupal.

Все шаблоны CMS Joomla используют типовую структуру каталогов и файлов, однако она может несколько варьироваться от шаблона к шаблону.

Типичный шаблон CMS Joomla должен включать следующие каталоги:

В зависимости от сложности и дизайна, в каталоге шаблона может лежать папка: javascript, которая содержит поддерживающий JavaScript, используемый шаблоном для добавления ему функциональности.

Пример структуры с файлами представлен на рис. 2.

pic3

Рисунок 2 – Структура шаблона Joomla

pic4

Рисунок 3 – Структура шаблона Drupal

На рис. 3 представлена структура, где чётко можно увидеть зависимость элементов шаблона.

Следует понимать, что Drupal в первую очередь ищет шаблоны в самой теме. И, если находит, подключает его по умолчанию.

По умолчанию все шаблоны находятся в ядре cms, в папке modules.

Файл с описанием темы ( .info) - это файл описывающий имя темы, которое будет видно при работе с сайтом, а так же имя файла, которое будет использоваться для вызова функций темы.

Файлы шаблонов (. tpl.php) – эти шаблоны используются для (X)HTML разметки и вывода PHP переменных.template.php - данный файл используется как площадка для написания php кода. Остальные файлы - обычно в теме присутствуют логотип, скриншот и иконки.

Рассмотрим пример создания шаблона на примере Joomla.

Для создания шаблона необходимо создать следующие папки и файлы: css — директория со стилями шаблона.

template.css — файл внутри каталога css, который будет содержать каскадные таблицы стилей. В больших шаблонах файлов *.css в папке гораздо больше.

index.php — собственно, сам шаблон.

templateDetails.xml — наиважнейший и обязательный файл, он содержит описание темы оформления.

Такова минимальная комплектация темы, папка с вашим шаблоном должна  содержать  всё   перечисленное.   Разметка   файла templateDetails.xml представлена на рис. 4.

pic5

Рисунок 4 – Разметка файла templateDetails.xml

Код файла index.php представлен на рис. 5.

pic2

Рисунок 5 – Код файла index.php

Обзор программ для работы с шаблонами

Themler это новая программа для веб-дизайна, создания шаблонов для популярных CMS или статичных HTML сайтов от разработчиков программы Artisteer. Программа является самостоятельным продуктом, и не связана функционально с Artisteer [5].

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

Интерфейс Themler дружественен и интуитивно понятен. Однако по сравнению со своим предшественником эта программа несколько сложнее, так как имеет гораздо больше возможностей.

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

Заключение

В данном работе был проведено исследование шаблонов наиболее популярных CMS. Ярким представителем программ для работы с шаблонами является Themler. Следующим шагом развития данной программы могла бы стать система для создания интеллектуального паттерна разработка шаблонов. Данная система могла бы иметь базу знаний для шаблонов. Это позволило бы более гибко настраивать выбранные шаблоны. Позволило бы облегчить создание новых шаблонов, снизить требования для конечного пользователя. Например, пользователь выбирает определенный тип  заголовка для страницы. Система строит дерево решений, выводит подходящие результаты, но указывает, что к данному типу заголовка наиболее подходит такой тип оформления, структура и т.д. Далее пользователь хочет создать основной текст страницы. Система снова строит дерево решений и выбирает наиболее подходящую структура и оформление с учетом предыдущего выбора. Такая система позволила бы облегчить создание новых шаблонов, снизить требования для конечного пользователя. В перспективе возможна доработка плагина для существующей системы CMS с применением базы знаний, дерева шаблонов.

Литература

  1. Работа с WordPress, 2019. [Электронный ресурс]. URL: Ссылка (дата обращения: 20.11.2019). - Назв. с экрана.

 

  1. Обзор CMS Joomla. 2019. [Электронный ресурс]. URL: Ссылка (дата обращения: 15.11.2019). - Назв. с экрана.
  2. Темизация CMS Drupal. 2019. [Электронный ресурс]. URL: Ссылка Drupal/ (дата обращения: 17.11.2019). - Назв. с экрана.
  3. Структура CMS Joomla. 2019. [Электронный ресурс]. URL: Ссылка (дата обращения: 15.11.2019). - Назв. с экрана.
  4. 2019. [Электронный ресурс]. URL: Ссылка (дата обращения: 17.11.2019). - Назв. с экрана.