Я переопределяю frontController в переопределении \ classes \ controller \ FrontController.php. Я добавил только простой кодPrestashop FrontController override не работает
class FrontController extends FrontControllerCore
{
init()
{
[...]
$logo_image_url = 'themes/'._THEME_NAME_.'/img/shop/'.Tools::getValue('controller').'.png';
if (!file_exists($logo_image_url)) $logo_image_url = 'themes/'._THEME_NAME_.'/img/shop/main.png';
[...]
$this->context->smarty->assign(array(
// Usefull for layout.tpl
[...]
'logo_shop_image' => $logo_image_url,
));
[...]
}
}
И в header.tpl я добавил IMG с SRC = "{$ logo_shop_image}". Я удаляю class_index.php и после обновления страницы работает (class_index.php был регенерирован) на моем localhost.
Overridedcode не работает на моем сервере. $ logo_shop_image всегда пуст. Я регенерирую class_index.php тоже, похоже, что prest stil использует оригиналFrontController потому что, когда я переопределяю исходный код, он работает. Как принудительно использовать файл переопределения в каталоге переопределения?
Мне интересен файл class_index.php, и я увидел что-то странное.
'FrontController' =>
array (
'path' => 'override/classes/controller/FrontController.php',
'type' => 'class',
'override' => false,
),
Почему 'override' => false? Это файл с рабочего локального хоста. Это важно?
Пожалуйста, объясните подробно, что вы имеете в виду John Doe –