主页中的 Prestashop blocknewsletter

Prestashop blocknewsletter in Homepage

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

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

代码如下:

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

提前致谢。

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

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