ПЗ Караулова В.С. (1231750), страница 7
Текст из файла (страница 7)
После просмотра большого количества отзывов, а так же работ, сделанных на Joomla! и MODX, после изучения доступного функционала, сообществ и многого другого выбор был сделан в пользу MODX так же и из-за меньшей популярности данной системы.
Более подробно о MODX: MODX — это бесплатная профессиональная система управления содержимым (CMS) и среда разработки для веб-приложений (CMF), предназначенная для обеспечения и организации совместного процесса создания, редактирования и управления контентом (то есть содержимым) сайтов.
MODX распространяется бесплатно по лицензии GPL с открытым исходным программным кодом (Open Source). Это означает, что систему MODX может использовать каждый: как для личного использования, так и для коммерческого распространения сайтов, построенных на данной системе управления.
MODX написана на программном языке PHP и использует для хранения данных СУБД MySQL или MS SQL. Система управления MODX может быть установлена на большинстве веб-серверов (например, таких как IIS, Apache, Lighttpd, nginx и Zeus), а контрольная панель системы (или админ-зона) работает практически во всех современных браузерах [22].
3.4.2 Размещение сайта в Интернете
Очевидно, что сайт Интернет-магазина должен быть доступен круглые сутки. Для этого существует услуга хостинга. Обычно она состоит в предоставлении вычислительных мощностей для размещения информации на сервере. Такую услугу предоставляют разные компании.
Для MODX существует отдельный современный хостинг. Сайт компании можно посетить по адресу modhost.pro. Чтобы сайт Интернет-магазина «Строймаг» размещался на этом хостинге необходимо зарегистрироваться на сайте, при добавлении нового сайта будет предложено выбрать для него тариф, по которому будет оплачиваться услуга хостинга в месяц, а так же, сколько места будет выделено на сервере и какие дополнительные функции будут предоставлены. Для Интернет-магазина «Строймаг» выбран тариф «Оптимальный», он подходит для Интернет-магазинов, включает 8Gb SSD, 256 MB RAM, к сайту можно добавить до 6 доменных имен. Стоимость в месяц 300 рублей.
CMS для установки на хостинге только MODX Revolution (последняя разработка, опубликованная в 2010 году), версию можно выбрать, для Интернет-магазина «Строймаг» выбрана новейшая 2.3.3-pl от 29.01.2015.
Имя сайту присвоено «[STROYMAG]». Далее можно установить набор необходимых модулей. После сохранения введенных параметров, будет предложено оплатить услугу хостинга. После оплаты по тариф хостинг-провайдер предоставляет сайт со служебным адресом. Параметры сайта Интернет-магазина «Строймаг» можно увидеть на рисунке 3.14.
Рисунок 3.14 – Параметры сайта Интернет-магазина «Строймаг»
Информация по доступу к базе данных, управлению сайтом, серверу и другому показана на рисунке 3.15.
Рисунок 3.15 – Информация для управления Интернет-магазином «Строймаг»
Служебный адрес магазина не подходит для использования в качестве основного. Желательно, чтобы адрес (доменное имя) отражал информацию, предоставляемую web-ресурсом, был понятен для конечного пользователя.
Доменное имя для сайта Интернет-магазина «Строймаг» было куплено у AGAVA − аккредитованного регистратора доменных имен в зонах .ru и .рф. Доменное имя может быть любое, главное, чтобы оно не было занято. В данном случае подходящим и не занятым именем оказалось stroymag-store.ru. Стоимость доменного имени составила 150 рублей за один год использования. Необходимо обратить внимание, что владелец доменного имени предоставляет паспортные данные и подтверждающие документы для оформления сделки.
Для доменного имени можно настроить псевдоним. Псевдонимы − это дополнительные имена доменов, связанные с основным доменом для обращения к тем же ресурсам, что и основной домен. К доменному имени stroymag-store.ru добавлен псевдоним www.stroymag-store.ru.
Необходимо настроить связь сайта и доменного имени. Для этого нужно настроить DNS (Domain Name System), систему доменных имен. Обычно ее используют для получения IP-адреса по имени хоста. Требуется настроить всего одну запись типа А, тогда при обращении к stroymag-store.ru запрос уйдет на адрес хоста (рисунок 3.16).
Рисунок 3.16 – Управление зоной stroymag-store.ru
Для того чтобы хост знал, что на запрос нужно ответить необходимо на сайте хостинга добавить к сайту домен (рисунок 3.17).
Рисунок 3.17 – Домены, добавленные к Интернет-магазину «Строймаг»
Далее нужно настроить веб-север для перенаправления со всех доменов, включая служебный, на один определенный. Правила веб-сервера представлены на рисунке 3.18.
Рисунок 3.18 – Правила веб-сервера
В результате всех вышеперечисленных настроек получается пустой сайт, размещенный и доступный в Интернете, управляемый CMS MODX Revolution и имеющий адреса s1595.h3.modhost.pro, www.stroymag-store.ru, stroymag-store.ru. При переходе по любому из данных адресов произойдет перенаправление на stroymag-store.ru.
3.4.3 Модули для создания Интернет-магазина с помощью CMS MODX
Для MODX Revolution написано достаточно большое количество как бесплатных, так и платных модулей значительно упрощающих работу над проектами. Для создания Интернет-магазина «Строймаг» были установлены и использованы следующие модули:
-
Ace (для визуалиации html, php, js, jquery, css кодов);
-
miniShop2 (модуль для создания и управления Интернет-магазином);
-
mSearch (организация поиска на сайте);
-
pdoTools (работа с ресурсами проекта);
-
Tickets (модуль для добавления отзывов и комментариев на сайт и управление ими).
Данные модули бесплатны и позволяют полностью реализовать Интернет-магазин на данной CMS.
Самый важный модуль из перечисленных – это miniShop2. Он обладает очень большой расширяемостью функционала. Главной его особенностью является возможность создавать каталоги и товары в качестве ресурсов. Через этот модуль происходит вся работа Интернет-магазина. От настройки систем оплаты, добавления товара в корзину, отображения категорий товаров на сайте и до оформления и управления заказами.
Установка модулей может производиться непосредственно через CMS. Необходимо только добавить поставщика (хранилище пакетов компонентов MODX) и загрузить дополнения (рисунок 3.19).
Рисунок 3.19 – Установка дополнительных модулей
3.4.4 Настройки и особенности работы в CMS MODX Revolution
Как при работе с любой CMS создание сайта в MODX происходит через панель администратора (рисунок 3.20). На панели администратора есть все необходимые для работы инструменты.
Рисунок 3.20 – Панель администратора сайта Интернет-магазина «Строймаг»
MODX позволяет очень гибко настраивать систему под определенный проект. Так, для Интернет-магазина «Строймаг» были сделаны незначительные изменения в настройках ядра системы: отключено использование встроенного текстового редактора, включено использование редактора кода Ace, несколько языковых настроек изменены на русский язык.
В системных настройках модуля miniShop2 изменены поля таблицы покупок, поля адреса доставки, поля таблицы товаров, дополнительные поля товаров, основные поля панели товаров, используемый шаблон для товара. Несистемные настройки модуля заключались в настройке способов доставки (самовывоз, доставка), добавление связи товаров с типом «один ко многим» для реализации сопутствующих товаров.
Сайт создается из ресурсов-документов, являющихся отдельными страницами. Дерево документов для сайта Интернет-магазина «Строймаг» представлено на рисунке 3.21.
Рисунок 3.21 – Дерево ресурсов сайта Интернет-магазина «Строймаг»
Как уже было сказано ранее, miniShop2 позволяет создавать каталоги и товары как ресурсы что очень наглядно и удобно для работы, так как они редактируются как страницы сайта.
Для сокращения дублирующего кода MODX позволяет создавать отдельные элементы для использования их в разных местах документа. Элементы делятся на шаблоны (используются для основной разметки страницы), чанки (html-код), сниппеты (php-код), плагины (php-скрипты). Вызов элементов происходит через специальные обозначения.
Для работы так же доступна файловая система сайта. Для Интернет-магазина «Строймаг» отдельно создавался файл стилей style.css, так как дизайн сайта разработан самостоятельно для магазина.
MODX CMS позволяет очень гибко настраивать возможности для работы с сайтом различным пользователям. Так, для данного Интернет-магазина необходимо создать двух менеджеров с ограниченными правами основная задача которых – работать с товаром на сайте, а так же принимать и оформлять заказы.
Настройка подобных прав проходит в несколько этапов. Первый этап – создание группы ресурсов, которые не должны быть доступны менеджеру. На рисунке 3.22 показаны ресурсы сайта, доступные только администратору.
Рисунок 3.22 – Ресурсы сайта, к которым имеет доступ только администратор
Таким образом, менеджеру будет доступен только каталог товаров. Далее в настройках системы в разделе «Контроль доступа» создается необходимая политика доступа. Она представляет собой набор различных прав и действий, которые могут быть доступны для менеджера. Для менеджера Интернет-магазина «Строймаг» созданы две политики доступа «Контент Эдитор» и «Менеджер Минишоп». «Контент Эдитор» создана на шаблоне политики доступа «AdministratorTemplate» с отключением большинства возможностей. «Менеджер Минишоп» создана на шаблоне политики «miniShopManagerPolicyTemplate» с небольшими ограничениями. Далее создается новая группа пользователей «Managers», к которой применяются данные политики доступа, а так же две стандартные политики «TicketVipPolicy», «TicketUserPolicy», позволяющие работать с отзывами. После этого создаются два новых пользователя, которые включаются в группу «Managers».
Так, пользователи группы «Managers» могут:
-
создавать и изменять товары;
-
управлять заказами;
-
управлять отзывами;
-
обновлять кэш сайта;
-
обновлять свой профиль.
3.4.5 Программная реализация
При реализации данного Интернет-магазина большей частью использовано четыре языка программирования: HTML 5, CSS3, JavaScript, PHP.
HTML 5 – новая веха в языке гипертекстовой разметки. Позволяет работать не только с текстовой, но и с аудио-, видео- и графической информацией, а так же анимацией и многим другим. Поддерживает практически все теги старых версий и включает несколько новых.
CSS3 – каскадные таблицы стилей третьего поколения. Формальный язык реализованный с помощью языка разметки. Основное преимущество перед старыми версиями состоит в том, что позволяет создавать некоторую анимацию без использования JavaScript. В данном проекте именно CSS-код отвечает за дизайн сайта. CSS-код вынесен в файл style.css, он представлен в приложении А. HTML и CSS связаны с помощью классов и идентификаторов. В HTML-коде элементы принадлежат определенным классам и идентификаторам, а в СSS-коде задается стиль для данных классов.
JavaScript в реализации данного Интернет-магазина играет незначительную роль и используется для создания анимации. Анимация присутствует почти на каждой странице и реализована с помощью библиотеки jQuery, которая фокусируется на взаимодействии JavaScript и HTML. Код JavaScript представлен в приложении Б.
PHP использован в сниппетах установленных модулей, которые не нуждались в изменении для данного проекта, поэтому их код представлен не будет.
Каждая страница включает в себя шапку и подвал, а так же заголовок, который не влияет на видимую часть страницы, но содержит различную инофрмацию. Чтобы не дублировать код страниц шапка, подвал и заголовок вынесены в чанки Header_Str, Header_Str_Main, Footer_Str, Footer_Str_Main, Head_Str соответственно. Шапка и подвал для главной страницы имеют незначительные изменения (отсутствует ссылка на главную страницу).
Ниже приведен код чанка Head_Str.
<head>
<meta charset="utf-8">
<meta NAME="description" CONTENT="[STROYMAG] – магазин строительных и отделочных материалов!">
<title>"Строймаг" - Магазин строительных и отделочных материалов</title>
<!--[if lt IE 9]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>