Magento – это новая профессиональная система управления интернет-магазином с открытым кодом, дающая беспрецедентную гибкость и возможности управления. С Magento Вы больше никогда не почувствуете себя загнанным в угол движком собственного интернет-магазина.
Поскольку Magento – система управления интернет-магазином с открытым кодом, её код доступен для бесплатного скачивания. Просто перейдите по ссылке www.magentocommerce.com/download и скачайте себе копию уже сегодня.
В этом руководстве мы введём ключевые понятия и пройдём вместе с вами все этапы настройки магазина Magento, от установки программы до занесения товаров.
Элементы и Терминология Сайтов Magento
Magento состоит из небольшого набора различных элементов, которые определяют функциональность, дизайн и бизнес-логику сайта. Для того чтобы правильно использовать информацию из Руководства Пользователя, крайне важно хорошо усвоить терминологию, которая применяется для описания этих элементов системы Magento. Терминология, представленная в этой главе, скорее всего, вам не знакома, поэтому не торопитесь и внимательно прочитайте главу. Но, что особенно важно, не падайте духом, если вы не в состоянии составить полное представление обо всех этих новых терминах. Эта глава служит только для их введения, и в последующих главах эти простые определения будут рассмотрены более детально.
Веб-сайты (Websites) и Магазины (Stores)
Одной из самых ярких отличительных черт Magento является возможность управлять несколькими сайтами и магазинами через один административный интерфейс. Наряду с прочими разнообразными настройками, это позволяет хозяевам управлять своими магазинами на разных сайтах и выставлять один товар на разных языках на одном сайте. Если вы планируете продавать свой товар на одном языке с одного сайта, вам не понадобятся эти функции, но возможность беспрепятственного расширения и добавления других языков позволит настраивать Magento по мере того, как ваш бизнес будет выходить за пределы вашей страны.
Веб-сайты (Websites)
Веб-сайт составляют один или несколько магазинов с общей базой данных о клиентах и заказах и корзиной. Это очень широкое понятие, которое может быть адаптировано к индивидуальным потребностям отдельных торговцев.
Магазины (Stores)
Существует множество вариантов настройки магазинов, но помните: если магазины входят в состав одного веб-сайта, они будут совместно использовать определённую информацию.
Витрины магазина (Store Views)
Витрины магазина обычно используются для его демонстрации на разных языках. Так, например, если вы хотите, чтобы магазин можно было просматривать на английском и на испанском, вы можете создать один магазин и две разных витрины для него.
Ниже приведены несколько сценариев для веб-сайта и магазина различных назначений:
Наиболее распространена настройка одного веб-сайта с одним магазином, но понимание того, как функционируют несколько веб-сайтов и магазинов вместе, поможет вам осознать, почему значения определённых настроек имеют глобальное влияние и выставляются по умолчанию, а другие имеет смысл прописывать только на уровне конкретного сайта или магазина.
Архитектура Magento
Каркасом программной системы Magento является Zend Framework, что гарантирует защищённость и возможность пользовательской доработки кода. Есть много причин для выбора Zend Framework, но, в основная состоит в том, что Zend Framework предоставляет наличие объектно-ориентированной программной библиотеки.
Система Magento строилась на этой основе с учётом 3-х основных принципов.
- Гибкость: Мы считаем, что каждая система управления должна быть столь же уникальна, как и бизнес для которого она разработана. Код Magento позволяет выполнить настройку в полном соответствии с условиями заказчика.
- Возможность Обновления: Основной код отделён от общих и локальных настроек, что позволяет настраивать Magento, не утрачивая возможности обновления.
- Скорость и Безопасность: Использованные разработчиками стандарты кодирования соответствуют наиболее прогрессивным методам повышения производительности программного обеспечения и обеспечения безопасности интерактивной витрины магазина.
В этом разделе мы представим основные понятия и терминологию Magento. Даже если вы не будете ничего проектировать и разрабатывать для Magento, эти понятия и термины помогут вам настроить свой интернет-магазин.
Ядро (Core)
В ядре Magento содержатся все функции, которые входят в загружаемую версию. Основной код – это набор модулей, разработанных или одобренных командой разработчиков ядра Magento. Вносить изменения в файлы ядра не рекомендуется, так как это сделает невозможным обновление Magento в будущем.
Локальные настройки (Local)
Локальные расширения – это настройки Magento, хранящиеся только в отдельно взятой пользовательской копии. Эти расширения помещаются в локальную папку (local folder), чтобы они не мешали обновлениям основного кода, а также для того, чтобы отличать их от общих настроек. Существуют разные типы расширений, которые мы скоро рассмотрим, но все они будут храниться в одной директории.
Локальные расширения работают так же, как и основной код, - различаются только папки.
Общие настройки (Community)
Понимание сути термина «общие настройки» не представляет сложности. После загрузки эти настройки хранятся в общей папке (community folder). Как и в случае локальных расширений, их хранение отдельно от основного кода Magento позволяет хозяевам магазинов пользоваться дополнительными функциями и при этом не ставить под угрозу возможность обновления Magento до новых версий.
Расширения (Extensions)
Вкратце, термин «расширения» значит именно то, что значит. Это один или несколько упакованных вместе файлов, направленных на расширение функциональности Magentо. Строгие условия использования не дают расширениям изменять основной код, тем самым гарантируя, что никакое расширение функций не станет препятствием для обновления, когда выйдет новая версия Magento.
Расширения могут устанавливаться через административную панель или загружаться из Magento Connect. Оба эти процесса будут освещены в руководстве ниже. Но давайте рассмотрим три типа расширений.
Существуют три типа расширений, которые могут находиться в одном из двух мест, описанных выше.
Вот три основных типа расширений.
Модули (Modules)
Модуль расширяет свойства и функции Magento. Вы, возможно, знакомы с идеей модулей по другому программному обеспечению. Если нет, то в качестве конкретных примеров модулей можно привести интеграцию платёжных шлюзов или инструменты продвижения специфических товаров.
Интерфейс (Interface)
Интерфейс – это набор тем, который определяет визуальный вывод и функционал пользовательского интерфейса вашего магазина. Интерфейс может быть прописан на уровне и сайта, и магазина, или сайта и магазина через административную панель. Мы обсудим прописывание интерфейсов ниже в этом руководстве, а сейчас давайте рассмотрим компоненты тем.
Темы (Themes)
Тема – это любая комбинация макета, шаблона и/или скинов, которая создаёт зрительное восприятие вашего магазина. Система Magento построена с расчётом на возможность загрузки нескольких тем сразу, поэтому она различает темы двух типов:
- Стандартные Темы (Default Themes) – Каждый интерфейс включает в себя тему, называемую «стандартная» («default»), и она является основной темой интерфейса. Когда вы прописываете интерфейс для магазина, приложение автоматически находит тему «стандартная» и загружает её на пользовательский интерфейс. Для настройки дизайна вашего магазина вы можете либо модифицировать эту тему, либо создать нестандартную тему и загрузить её в дополнение стандартной. Стандартная тема должна содержать все макеты, шаблоны и скины, требующиеся для безошибочной работы магазина. Таким образом, она занимает нижнюю позицию в иерархии тем.
- Нестандартные Темы (Non-Default Themes) - Нестандартная тема может содержать ровно столько файлов, сколько, на ваш взгляд, будет соответствовать вашим потребностям. Эта разновидность тем используется для внесения временных, сезонных изменений в дизайн магазина без необходимости создавать полностью новую стандартную тему. Создав несколько новых графических объектов и обновив CSS, вы легко сможете придать даже крайне унылому магазину исключительный рождественский вид.
Давайте обратимся к компонентам тем.
- Макеты (Layouts) – Макеты – это базовые XML файлы, которые задают структуру блоков разных страниц, а также контролируют META-информацию и кодирование страниц. Макетные файлы разделяются на основе модулей; к каждому модулю относится свой макетный файл.
- Шаблоны (Templates)– Шаблоны – это PHTML файлы, содержащие элементы разметки (X)HTML и необходимые PHP теги для создания логики визуального представления информации и полезных функций.
- Скины (Skins)– Скины – это блочная верстка Javascript и CSS и файлы изображения, которые украшают вашу страницу (X)HTML. Что такое блоки, спросите вы. Вопрос хороший, но не волнуйтесь, мы уже почти закончили определять компоненты Magento.
Блоки (Blocks)
С помощью блоков Magento распознаёт массив функций системы и создаёт модульный способ управления этим массивом, как с визуальной, так и с функциональной позиции. Существует два типа блоков, и они взаимодействуют для организации визуального вывода данных.
- Структурные Блоки (Structural Blocks) – Это блоки, созданные исключительно с целью придания визуальной структуры странице магазина. В качестве примеров можно привести заголовок окна, левую колонку, центральную область и нижний колонтитул.
- Блоки Содержания (Content Blocks) – Это блоки, которые непосредственно наполняют структурные блоки содержанием. Они являются представлением каждой функциональной возможности на странице и используют файлы шаблона для генерации (X)HTML с целью последующей вставки в его родительский структурный блок. Примеры: список категорий, мини-корзина, теги и списки товаров.
Если вы не собираетесь заниматься разработкой и проектированием для Magento, вам будет вполне достаточно знания этих терминов. Тем, кто будет разрабатывать или проектировать пользовательские модули и интерфейсы, нужно обязательно прочитать Главу 12: Разработка и Проектирование для Magento. Разумеется, мы рекомендуем сначала прочитать всю книгу, потому что в следующих нескольких главах много полезной информации.