Разработка

Создание новой позиции в Opencart 2.3

Краткое руководство

Небольшое пошаговое руководство, как добавить новую позицию в макете сайта на базе OpenCart 2.3

Итак начнем...

1. В файле /admin/view/template/design/layout_form.tpl копируем table с позицией и изменяем название позиции на свое.

2. В файле admin/language/ru-ru/design/layout.php добавляем значение текста для новой позиции, например:

 $_['text_(новая позиция))']    = 'Новая позиция';

3. В файле контроллера layout admin/controller/design/layout.php добавляем значение текста новой позиции, например:

$data['text_(новая позиция)’] = $this->language->get('text_(новая позиция)');

4. Создаем контроллер дя новой позиции в папке catalog/controller/common/. К примеру можно скопировать контроллер content_top. И в наименовании класса меняем ContentTop на свое.

5. Далее ищем в новом контроллере строку:

$modules = $this->model_design_layout->getLayoutModules($layout_id, 'content_top');

и меняем название позиции на свое.

6. В этом же файле ищем, есть ли роутинг для нашей страницы (где хотим вывести новую позицию). Это необходимо для того, чтобы задать значение $layout_id для получения списка модулей с помощью функции getLayoutModules. Если нет, добавляем: копируем существующий роутинг, например:

if ($route == 'information/information' && isset($this->request->get['information_id'])) {
$this->load->model('catalog/information');
$layout_id = $this->model_catalog_information->getInformationLayoutId($this->request->get['information_id']);
}

и заменяем route на route нашей страницы (его можно найти в url страницы, например: ?route=checkout/checkout).

7. Далее создаем шаблон нашей позиции в папке catalog/view/theme/(имя шаблона)/template/common/. Можно скопировать также, например, шаблон content_top.

8. Далее заходим в контроллер нашей страницы (модуля) и зададим вызов контроллера новой позиции в переменную. Например:

$data['(новая_позиция)'] = $this->load->controller('common/(новая_позиция)');

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

Ну вот и все! Новая позиция в макете opencart 2.3 создана.


Поделиться

Также рекомендуем почитать и другие наши статьи по разработке:

А теперь поговорим о вашем проекте!