Теги: Практика
27.05.2019
Мы добавили мета-теги и постраничную навигацию для страниц категорий. Теперь сделаем это для страниц брендов. Пагинация для товаров бренда мало чем отличается от пагинации для товаров категории. В таблице brand базы данных предусмотрены поля keywords и description, которые заполняются при создании бренда.
15.05.2019
Сейчас на странице категории показываются все товары этой категории и всех ее потомков. Это подходит для небольшого каталога, но когда товаров много, страница будет очень большой. Давайте добавим постраничную навигацию и используем для этого класс Pagination.
12.05.2019
Давайте немного подумаем о SEO-оптимизации и установим для страниц нашего сайта мета-теги. Мета-теги влияют на то, как отображатся и какую позицию занимает страница сайта в поисковой выдаче Yandex и Google. При прочих равных условиях поисковики отдают предпочтение сайту с грамотно сформированными мета-тегами.
10.05.2019
Следующий шаг — вывести список товаров отдельного бренда. И создать страницу всех брендов. Методы в модели для получения списка товаров бренда и получения списка всех брендов у нас уже есть. Методы actionBrands и actionBrand в контроллере тоже определены. Осталось только создать файлы view-шаблонов brand.php и brands.php.
08.05.2019
Итак, мы вывели на главной странице список лидеров продаж. Теперь покажем список товаров выбранной категории. Нам нужно добавить в модель два метода: один — для получения информации о категории и второй — для получения списка товаров. Или, сделать еще проще — добавить только первый метод, а потом использовать…
06.05.2019
Давайте создадим контроллер PageController, который будет отвечать за показ страниц сайта, не связанных с каталогом товаров. Вообще, такой контроллер уже есть сразу после установки фреймворка — это SiteController, но мы его оставим без изменений, как образец. В первую очередь, надо переопределить контроллер по умолчанию.
05.05.2019
В левой колонке, под меню каталога, предусмотрен блок популярных брендов. Этот блок показывается на всех страницах сайта, так что оформим его в виде виджета. Все по аналогии с виджетом меню каталога — создаем в директории components файл BrandsWidget.php и view-шаблон в поддиректории views.
05.05.2019
Создадим в базе данных таблицу brand для хранения брендов. И добавим в таблицу product внешний ключ brand_id. Создадим модель для этой сущности, и добавим два action-а в контроллер — которые будут отвечать за показ списка всех брендов и за показ списка товаров выбранного бренда.
04.05.2019
Теперь нам нужно как-то выводить меню каталога в левой колонке. Поскольку это меню показывается на многих страницах сайта, реализуем его в виде виджета. И тогда сможем вставить меню в любом месте шаблона одной строкой кода. Для создания виджета нам потребуется директория components, внутри нее создаем файл класса.
03.05.2019
Теперь создаем базу данных eshop и две таблицы — product и category. Таблица category описывает разделы каталога, а таблица product — товары каталога. Редактируем файл config/db.php, изменяем имя базы данных на eshop. И создаем классы моделей Category и Product в директории models.