我覆盖了override \ classes \ controller \ FrontController.php中的frontController。我只添加了简单的代码
Formula
在header.tpl中,我添加了img src =" {$ logo_shop_image}" 。我删除 class_index.php ,并在页面刷新后在我的本地主机上工作( class_index.php 重新生成)。
Overridedcode无法在我的服务器上运行。 $ logo_shop_image 始终为空。我也重新生成 class_index.php ,看起来presta stil使用原始 FrontController ,因为当我覆盖原始代码时它会起作用。如何在覆盖目录中强制使用覆盖文件?
我对class_index.php文件感兴趣,我看到了一些奇怪的东西。
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,
));
[...]
}
}
为什么'覆盖' =>假?这是来自localhost的文件。这很重要吗?
答案 0 :(得分:-2)
具有_PS_HOST_MODE_
配置属性的内容。