Создание страницы Новинок на Opencart 3.x

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (4 оценок, среднее: 3,25 из 5)
Загрузка...

Создаем страницу «Новинки» на которой выводи новые товары, которые появились в магазине.

Для этого надо:

  1. создать контроллер для новой страницы
  2. создать шаблон для новой страницы
  3. Создать макет для страницы в админ панеле
  4. В макете страницы вывести модуль «Новые поступления«

В принципе, таким способом создается и любая другая страницы, например «Лидеры продаж»

План действий накидали, теперь к реализацию.

Файл latest.php

/catalog/controller/catalog/latest.php


<?php
class ControllerCatalogLatest extends Controller {
public function index() {

$this->load->language('catalog/latest');

$this->document->setTitle($this->language->get('Title'));

$data['breadcrumbs'] = array();

$data['breadcrumbs'][] = array(
'text' => $this->language->get('text_home'),
'href' => $this->url->link('common/home')
);

$data['breadcrumbs'][] = array(
'text' => $this->language->get('heading_title'),
'href' => $this->url->link('catalog/latest')
);

$data['column_left'] = $this->load->controller('common/column_left');
$data['column_right'] = $this->load->controller('common/column_right');
$data['content_top'] = $this->load->controller('common/content_top');
$data['content_bottom'] = $this->load->controller('common/content_bottom');
$data['footer'] = $this->load->controller('common/footer');
$data['header'] = $this->load->controller('common/header');

$this->response->setOutput($this->load->view('catalog/latest', $data));
}
}

Создаем еще файл перевода для новой страницы (ну это на любителя), так как мы его подключили в контроллере.

Файл latest.php


<?php
// Heading
$_['Title'] = 'Новинки';
$_['heading_title'] = 'Новинки';

/catalog/language/ru-ru/catalog/latest.php

Файл latest.twig

/catalog/view/theme/default/template/catalog/latest.twig


{{ header }}
<div id="content">
{{ column_left }}
{{ content_top }}
{{ content_bottom }}
{{ column_right }}
</div>
{{ footer }}

Теперь переходим в админку сайта и создаем макет для страницы «Новинки»

В поле «Путь» прописываем catalog/latest

После этого страница будет доступна по урлу

http://my-site.com/index.php?route=catalog/latest

Не забываем в макете вывести модуль который нам нужен, для вывода новинок товаров.

1 комментарий

  • Александр

    Добрый день! Подскажите, пожалуйста, как сделать пагинацию для такой страницы? Необходимо вывести 180 новых товаров. Но, такая страница получается очень большой. Хотелось бы разбить ее, например, на 6 страниц по 30 товаров на каждой. Как это сделать? Или есть какое-то другое решение для Новых товаров (Последних поступлений)?

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *