OpenCart — от новичка до профессионала: Архитектура

OpenCart — от новичка до профессионала: Архитектура

От автора: эта статья — «OpenCart архитектура» является частью серии «OpenCart — от новичка до профессионала». До этого момента статьи были посвящены пользовательскому интерфейсу OpenCart. Мы рассмотрели, как работать в панели администрирования. Начиная с этой статьи, мы будем изучать OpenCart Framework, основанный на шаблоне проектирования MVC.

Если вы знакомы с шаблоном проектирования Модель-Представоение-Контроллер (MVC), у вас уже необходимая база; если нет, не беспокойтесь об этом — мы подробно рассмотрим архитектуру MVC в наших последующих статьях.

Общие сведения о параметрах маршрутов URL-адресов

OpenCart Framework довольно прост, так как он изначально был ориентирован на разработчиков начального уровня. Система использует простые маршруты URL-адресов, например: route=aa/bb. Строка запроса маршрута состоит, по меньшей мере, из двух частей, которые указывают фреймворку, что загружать.

Например, в приведенном выше примере я использовал aa как первую часть запроса маршрута, а bb — как вторую. В архитектуре MVC это работает следующим образом:

Сначала загружается контроллер. В этом случае контроллер идентифицируется первым и вторым параметрами в строке запроса. Первая часть строки запроса идентифицирует каталог, вторая часть идентифицирует имя файла контроллера (хотя без соответствующего расширения PHP). Таким образом, указанный выше параметр строки запроса относится к файлу, указанному ниже:

Примечание. Параметр маршрута может содержать третью часть, т. е. route=aa/bb/cc. Третья часть будет рассматриваться в следующих статьях, когда мы перейдем к теме контроллеров.

Библиотеки

Библиотеки играют в OpenCart очень важную роль. По сути, библиотеки — это вспомогательные файлы, которые чаще всего используются при разработке чего-то. OpenCart предоставляет готовые библиотеки, которые могут быть очень полезны при написании кода. Общий синтаксис загрузки такой библиотеки соответствует следующему формату: $this->library_name. Библиотеки можно найти в каталоге system/library.

Например, чтобы программно зарегистрировать пользователя в системе, вы можете использовать $this->user->login($username,$password);, а для выхода пользователя из системы можно использовать $this->user->logout();. Некоторые из наиболее часто используемых библиотек:

cart.php — содержит функции, связанные с корзиной

image.php — содержит функции, связанные с изображениями, такие как обрезка изображений, кеширование и многое другое

customer.php — включает функции, связанные с клиентом

config.php — отвечает за загрузку всех настроек OpenCart

user.php — содержит все функции администратора и пользователя

Языки

Языки могут располагаться в catalog/language. В предыдущих статьях мы добавили на наш сайт французский язык, поэтому в каталоге должны содержаться папки english и french. Чтобы более четко понять этот вопрос, мы рассмотрим, что содержится в папке english.

Значения, которые используются на многих страницах, хранятся в файле english.php. Если вы хотите добавить новое значение, просто следуйте приведенному ниже синтаксису:

В то же время, языки, используемые на специальных страницах, находятся внутри папок. Например, для страницы ошибки файл языка можно найти по адресу: catalog/language/english/error/not_found.php. Языковой файл можно загрузить в контроллер, используя следующий синтаксис:

Затем вы можете использовать функцию языковой библиотеки «get» для получения значения языка:

Примечание. Значения в глобальном языковом файле english/english.php загружаются автоматически и доступны для использования без метода загрузки $this->language->load.

Заключение

В этой статье мы рассмотрели и пояснили базовую архитектуру OpenCart System. Но это еще не все. В наших следующих двух статьях мы охватим другие темы. Чтобы стать экспертом по какому-либо инструменту, нужно знать Системную архитектуру этого инструмента. Поэтому в следующих статьях мы сосредоточимся на этих вещах. Надеюсь, вам понравилась статья.

Автор: Zaman Riaz

Источник: //code.tutsplus.com/

Редакция: Команда webformyself.

Метки:

Похожие статьи:

Комментарии Вконтакте: