繁体   English   中英

Prestashop FrontController覆盖无效

[英]Prestashop FrontController override not working

我在override \\ classes \\ controller \\ FrontController.php中覆盖了frontController。 我只添加了简单的代码

    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中,我添加了带有src =“ {$ logo_shop_image}”的 img。 我删除了class_index.php ,在页面刷新后,它在我的本地主机上工作了(重新生成了class_index.php )。

Overridedcode在我的服务器上不起作用。 $ logo_shop_image始终为空。 我也重新生成了class_index.php ,它看起来像presta stil使用原始的 FrontController,因为当我覆盖原始代码时,它就可以工作。 如何在替代目录中强制使用替代文件?

我对class_index.php文件感兴趣,并且看到了一些奇怪的东西。

  'FrontController' => 
  array (
    'path' => 'override/classes/controller/FrontController.php',
    'type' => 'class',
    'override' => false,
  ),

为什么'override'=> false? 这是来自本地主机的文件。 这非常重要吗?

带有_PS_HOST_MODE_ config属性的东西。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM