Что нового в OpenCart 4?

18.12.2020 18:00 (1520 просмотров)

Итак, только что я решил протестить новую версию OpenCart 4, которая кстати на момент начала написания статьи (18.12.2020) еще не вышла.

Итак, мое первое впечателние такое: если OpenCart 3 был версией чисто ради смены технологии и ничем не мог порадовать пользователей, то в OpenCart 4 уже имеются действительно полезные нововведения по функционалу.

 

Изменения в OpenCart 4 для пользователей

 

Встроенное мультиязычие

Добавлена метка языка в ссылках сайта. Причем языковая метка есть как в системных сслках, так и при использовании ЧПУ. С моей личной точки зрения это крайне важное изменение. Раньше приходилось ставить специальный модуль, чтобы обеспечить наличие разных ссылок для разных языковых версий сайта. Теперь это есть из коробки. И это здорово!

 

Появились встроенные Cron-задачи

wget "http://opencart-4000b.loc/admin/index.php?route=common/cron" --read-timeout=5400

 

Варианты товара в OpenCart 4

Также сразу бросилось в глаза появление вариантов товара. Пока что я не знаю точно, как это работает. Но, знаю, что по требованию той же Розетки, каждый цвет товара надо загружать как отдельный товар. И люди мучаются, придумывая, как под каждую опцию создать псевдотовар. Теперь, теоретически с этим должно быть меньше проблем

OpenCart 4, что нового: добавлены варианты товара

 

Текстовый редактор CKEditor вместо Summernote

Summernote не самый удобный редактор. Большинство ставят модификаторы, его заменяющие на TinyMCE или CKEditor (кстати, в сборке ocStore изначально была возможность переключения на CKEditor).

Единственное, что, хотель бы изменить в этом редакторе, так это высоту области для ввода текста. Уж как-то неудобно писать текст, когда надо прокручивать текстовое поле.

Что хорошего в OpenCart 4 - добавлен редактор текста CKEditor

 

 

Другие изменения в OpenCart 4

  • Теперь товар совсем не сохраняется, если не вписать ЧПУ (SEO URL).
  • Немного изменился менеджер изображений. Ничего существенного, просто на 1 клик меньше за счет того, что иконка отображаются под фото.
  • В списке товаров в админке Статус товара отображается зеленым или красным прямо в стоблце с Названием товара. Это чуточку более приятно, чем серая надпись в отдельном столбце.
  • Добавлен колокольчик уведомлений

В OpenCart 4 добавлены уведомления

 

Изменения в OpenCart 4 для разработчиков

---

В OpenCart 4 больше не будет OCMOD. Теперь все изменения делаются исключительно через События. Этот факт приводил в недоумение разработчиков вот в этом обсуждении - https://opencartforum.com/topic/169300-opencart-4x-is-coming/

Вполне может быть, что OCMOD до свидания, да здравствует vQmod ( вернемся к истокам :) ).

---

Изменен адрес для размещения файлов расширений

  • Было: admin/controller/module/account.php
  • Стало: extension/opencart/admin/controller/module/account.php

---

Используется Bootstrap 4.5.3. А это до свидание кривым рядам с товарами, которые встречаются даже в очень продаваемых шаблонах.

---

Используется Font Awesome Free 5.15.1

---

Добавлены неймспейсы. Видимо, решили привлечь на свою сторону программистов, которые начали свой путь с PHP 7 и просто не понимают, как так может быть, чтобы в файле не надо было прописывать заветное слово namespace.

---

Добавлен один общий контроллер для управления внешним видом превьюшки товаров в любых списках товаров (категория, производитель, похожие товары и тд)

$data['products'][] = $this->load->controller('product/thumb', $product_data);

Это означает, что вся верстка превьюшек товаров для всех списков товаров теперь находится в одном файле catalog/view/template/product/thumb.twig

Но это касается только оформления. Обработка данных для формирования списка все еще происходит в каждом отдельно взятом контроллере в коде:

foreach ($products as $product) {

...

---

Все SQL-запросы теперь принято писать с использованием грависов (`). К примеру:

$query = $this->db->query("SELECT `filter_id` FROM `" . DB_PREFIX . "category_filter` WHERE `category_id` = '" . (int)$category_id . "'");