Prestashop blocknewsletter在主页

时间:2017-10-03 14:12:24

标签: php prestashop-1.6

blocknewsletter显示在页脚,但我也需要它在主页上显示为全宽度块。 (我希望这是可以理解的)。

  1. 我已将blocknewsletter.php添加到以下代码中。
  2. 我还将blocknewsletter移植到DisplayHome。
  3. 我还创建了blocknewsletter_home.tpl
  4. 以下是代码:

    public function hookHome($params)
    {
         return $this->hookDisplayHome($params);
    }
    
    public function hookDisplayHome($params)
    {
        if (!isset($this->prepared) || !$this->prepared)
             $this->_prepareHook($params);
        $this->prepared = true;
        return $this->display(__FILE__, 'blocknewsletter_home.tpl');
    }
    

    我还修改了以下代码以包含home钩子。我取消了模块并重新安装了它。

    if (!parent::install() || !Configuration::updateValue('PS_NEWSLETTER_RAND', rand().rand())
    || !$this->registerHook(array('header', 'footer', 'actionCustomerAccountAdd')))
    

    if (!parent::install() || !Configuration::updateValue('PS_NEWSLETTER_RAND', rand().rand())
    || !$this->registerHook(array('home', 'header', 'footer', 'actionCustomerAccountAdd')))
    

    问题是,blocknewsletter不会显示在hookhome上,而只会显示在hookfooter上。我在这里错过了什么或者我做错了什么?你有什么建议吗?

    P.S。 Prestashop版本是1.6.1.11

    提前致谢。

1 个答案:

答案 0 :(得分:0)

尝试注册此钩子:$this->registerHook("displayHome");

确保{hook}在模板中,模块处于活动状态,尝试返回一个简单的字符串,以确保显示挂钩。