Крик души.
if (!empty($product_info)) {
$data['model'] = $product_info['model'];
} else {
$data['model'] = '';
}
Серьезно? зато PHP8
почему не
$data['model'] = $product_info['model'] ?? '';
или вообще в твиге
{{ product.model|default('') }}
--
в контроллере
$data['product'] = $product_info??null;
Да и вообще в контроллере данные обрабатываться не должны. должно быть что то вроде
$data['product'] = $this->model_catalog_product->getProduct($product_id);
весь product_info должен в модели быть спрятан
Реально код на PHP 5.3 зато выпендрился минимальную версию 8 поставил. неймспейсы по факту зачем тут. Ни автолоадера ни PSR, или это просто увидел новое слово надо внедрить.
портянки-портянки-портянки. Честно не понимаю что происходит, меньше кода меньше повода для ошибок, легче обслуживать, это же очевидно.
В твиге есть include. нет же видать даниэлю нравится портянки с километр. почему бы в админке, например в товарах, табы не подключать инклудами.
Зато ненужную фигню добавляет, типа рекуринга, кому такую фигню нужно пусть бы модулями доставляли. нужен просто работающий нормальный движок с минимальным набором функционала, остальное расширяться по необходимости, при этом не распыляться на сомнительный функционал.
Глядя на код и последний бэта релиз этого чуда в 2017 году, даже несмотря на современные копания в коде, возникает смутное чувство что версия 3 для опенкарта была последней.