Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...

Что нас ждет в OpenCart 4?


sv2109

5 067 просмотров

 Поделиться

На данный момент продолжается работа над 4 версией движка. На сегодня для тестирования доступна версия 4.0.0.0_b. Сроков выхода новой версии пока нету, но уже можно посмотреть какие там запланированы изменения. 
 
Из основного
- минимальная версия PHP - 8
"Warning: You need to use PHP8 or above for OpenCart to work!"

 

- убрали модификаторы (ocmod)
Вот только не понятно как можно убирать модификаторы, если с помощью событий еще можно сделать очень мало? И как при этом писать дополнения? Или будет как в версии 1.5 движка - отдельно OpenCart и отдельно все скачивали vQmod? 

- добавлена схема для базы данных
system/helper/db_schema.php 
Опять таки, зачем она нужна если запросы к базе все еще пишутся в одну строчку?
 
- для товара добавлены варианты
Можно указать главный товар и его варианты, например один товар с различными вариантами цветов, теперь это будут разные товары для каждого цвета со своими наборами опций, ценой, остатками и другими полями
 
- папка дополнений переехала
из
/catalog и /admin
в
/extension/opencart/catalog
/extension/opencart/admin
Свои же дополнения будут храниться в 
/extension/username/catalog
/extension/username/admin
спасибо @chukcha за уточнение

Суть это не меняет, но структуру файлов всех дополнений придется переделывать.

- неймспейсы теперь везде
было
class ModelCatalogProduct extends Model {
стало
namespace Opencart\Catalog\Model\Catalog;
class Product extends \Opencart\System\Engine\Model {

- и строгая типизация
было
public function getProducts($data) {
стало
public function getProducts(array $data = []): array {

 

Шаблон
- Bootstrap обновлен до 5 версии 
при этом поддержку font-awesome убрали, видимо иконки уже есть в Bootstrap

- jQuery 3.6 вместо 2.1 

- возможно, в движок будет добавлен React или Vue
Разговоры об этом идут, я уже писал об этом на форуме, также писал о том, насколько маловероятно что это будет реализовано  
 
- появилась новый шаблон 
product/thumb.twig 

 

для блока товара в категории, поиске, производителе итд. Более подробно тут
 
- появился новый шаблон 
common/pagination.twig
для пагинации
 
Админка
- появился новый тип дополнений - Startup
предположительно для добавления своих скриптов, которые будут выполняться при загрузке магазина

- появились задания крона
wget "http://localhost/opencart/4.0b/admin/index.php?route=common/cron" --read-timeout=5400


- добавлено GDPR Approvals для пользователей


- возле логотипа пользователя появился колокольчик

для уведомлений о новостях, новых версиях и обновлениях от OpenCart но по идее это могут использовать и сами модули для создания своих уведомлений. 


Общие впечатления

К сожалению, вот уже несколько новых мажорных версий, начиная со второй, вместо того, чтобы решать глобальные проблемы движка, такие как отсутствие нормальной системы расширений, отсутствие нормальных инструментов работы с базой данных, валидаторов, дублирование кода, устаревшее ядро движка, которое уже больше 10 лет как почти не изменяется, а также многие другие, OpenCart идет по пути "сделаем все красиво" и в каждой новой версии тратится куча времени для обновления дизайна, сначала добавили Bootstrap, потом в каждой новой версии его обновляют, добавили twig, обновили jQuery.. 
Каких-то кардинальных изменений я совсем не заметил, на мажорную версию это никак не тянет, максимум на 3.1. 
Хотя, работа над 4 версией еще не закончена, есть слабая надежда что еще что-то добавят. 

Если что-то пропустил  - дополняйте или поправляйте в комментариях. 

Products (1).png

Products.png

Dashboard.png

Administration.png

Your Store.png

  • +1 6
 Поделиться

62 комментария


Рекомендованные комментарии



сегодня кстати обновили немного сам официальный сайт

 

вот что заметил то теперь правый блок навигации теперь так выглядит в ЛК

 

Спойлер

image.thumb.png.21713444f3e16c14d22ee552f75a7b5e.png

 

очень важный апдейт

Ссылка на комментарий
6 минут назад, sv2109 сказал:

<ol class="breadcrumb">

потому что семантически это верно
потому что  это перечисляемый список
Хотите ul - оставляйте

Ссылка на комментарий
3 часа назад, SooR сказал:

Изменения больше косметические, вот одно из них:


$data['add'] = $this->url->link('customer/customer|form', 'user_token=' . $this->session->data['user_token'] . $url);

 

То есть вызов метода по ссылке через вертикальную черту. Зачем? Не знаю, визуально отделить файл/класс от метода. Стоит ли это изменение совместимости с модулями - однозначно нет. 

Вообще обновления мажорных версий больше выглядит как руководство к "правильному" кодингу. Даниель решил что так будет правильней, красивей, значит пишите так и привыкайте к новому. Вместо наращивания функционала все снова уходит в организацию кода, файловой структуре. Короче, неоправданный головняк.

Не толко визуально - explode - и не надо проверять весь путь на file_exists

Ссылка на комментарий
06.06.2021 в 11:22, MaxD сказал:

Если $code не пустой, то он используется вместо фактического текста шаблона. Получается, что можно модифицировать шаблон в обработчике события, и несколько дополнений, которые вносят изменения в один и тот же .twig, могут вполне себе уживаться.

 

В редакторе шаблона. Если нету в редакторе шаблона, создать. Тем самым наши str_replace закэшируем.

Ссылка на комментарий
12.06.2021 в 23:18, chukcha сказал:

потому что семантически это верно
потому что  это перечисляемый список
Хотите ul - оставляйте

Ну не согласен. В бредкрумб не предyсмотрено
 

Цитата

 

ol li {
list-style-type: decimal;
margin-left:20px;

}/*
decimal
lower-roman
upper-roman
lower-alpha
upper-alpha
none
*/

 

Но возможно  использовать (по желанию)

Цитата

ul li {
list-style-type: circle;
margin-left:20px;
}/*
disc
circle
square
none
*/

По-сути "тупо" будет выглядеть I category / II subcategory / III product (это  upper-roman) , еще "тупее" alpha (греческий алфавит)

 

Так что с бредкрумбом просто не нужно было извращаться, так как все одно в стилях list-style-type: none;

Изменено пользователем esculapra
Ссылка на комментарий
09.06.2022 в 18:11, esculapra сказал:

. В бредкрумб не предесмотрено

извините, что не предусмотрено*
 

<meta itemprop="position" content="1" />

Т.е. - порядок, т.е. <ol>

Ссылка на комментарий
12.06.2021 в 23:12, sv2109 сказал:

ну и еще несколько десятков! подобных мелочей и нужно будет каждый модуль теперь пол дня переделывать чтобы получить по сути тот же самый вид, только уже под 5 бутстрап! 

Ну и нафига? Просто не ставь 5 бут, а изменить можно глобально float-end на pull-right (несколько секунд во всех шаблах), тем более, что дефолтный шаблон вряд ли кто использует.

Ссылка на комментарий
09.06.2022 в 18:17, chukcha сказал:

Т.е. - порядок, т.е. <ol>

Поисковому боту пофиг порядок, если контент не несет полезной информационной нагрузки.

Вот я покажу картинку (это моя читалка epub - на сайте тоже инфа в таком виде). Вот тут да, есть информационная нагрузка, а также прослеживается структура. Ну а нафига заморачиваться с полосой навигации?

Кстати, в epub тоже используется таблица стилей - у меня в <ul> задается смещение, отличное от <ol>

Snap1.jpg

Ссылка на комментарий
09.06.2022 в 18:41, esculapra сказал:

Поисковому боту пофиг порядок, если контент не несет полезной информационной нагрузки.

Для Индексируещего бота - не пофик, тем более если существует микроразметка
В данном случае ХК несут  не сколько информационную, сколько указательную

Для читалок, а также возможно, для слабовидящих, как мне кажется удобно когда она(читалка) скажет
хлебные крошки
1 Домой
2. Категория
3. Товар

Ссылка на комментарий
09.06.2022 в 18:56, chukcha сказал:

Для Индексируещего бота - не пофик

Давай закроем полемику по полосе навигации. Есть более щепетильные моменты. Я залил на локалку 4-ю, пока руки не доходят досконально поюзать.

Ссылка на комментарий
09.06.2022 в 22:04, esculapra сказал:

Есть более щепетильные моменты.

Их там масса

Url
en/catalog/desktops/mac
/en/product/iphone
Или!!!
en/product/iphone/desktops (это решается) через одно место.

Т.е
catalog
product

Это роуты

Т.е. не так просто переехать желающим

Ссылка на комментарий
09.06.2022 в 22:22, chukcha сказал:

Т.е. не так просто переехать желающим

А я бы не совевал спешить. Типа изменить имя директории админа...

Вот попробуй просто войти в страницу логина для админа на сайте http://itlancers.org

Если не получится, то тогда по ссылке http://itlancers.org/administrator/antibot/eba.shtml

Это не совсем опенкарт, но и на опенкарт есть фича - ссылка будет типа домен/админ/?antibot=eba Просто этот функционал я счас встроил в систему антихакер для опенкарт (тестовый вариант я выложил).

Ссылка на комментарий

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас
  • Сейчас на странице   0 пользователей

    • Нет пользователей, просматривающих эту страницу.
×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.