获取Prestashop 1.6中的电话号码

问题描述:

有没有办法在任何模板的地方获得商店的电话号码? 在blockcontact.tpl我们:获取Prestashop 1.6中的电话号码

{if $telnumber != ''} 
     <p class="tel"> 
      <span class="label">{l s='Phone:' mod='blockcontact'}</span>{$telnumber|escape:'html':'UTF-8'} 
     </p> 
    {/if} 

我可以采取$ telnumber了钩在我的header.tpl页面顶部?

+0

此模块已在页眉中呈现tpl。请参阅[Image](http://nimb.ws/RG6wur) – Nimish

在blockcontact.tpl你有{$ telnumber}模块添加电话号码管理面板,因为从该模板的控制器分配,在这种情况下,blockcontact.php文件。

线+ -185:

$smarty->assign(array(

      'telnumber' => Configuration::get('BLOCKCONTACT_TELNUMBER'), 
      ... 

在这里你可以看到,被赋予$ telnumber变量的方式。


然后,如果你想在任何地方或任何模板,利用这一点,首先你需要去您需要的模板的控制器,并在正确的函数使用回答第二种方式@sarcom

如果它是一个模块可能是钩的功能是这样的模板迷上,如果它是一个核心控制器initContent( ) 功能。

然后您可以在模板中使用{$ telnumber}

如果您需要编辑核心控制器,最好的方法是使用覆盖功能。

这是一个肮脏的方式,但工程:

{Configuration::get('BLOCKCONTACT_TELNUMBER')} 
// This snippet can be used in every .tpl 

另一种方式是重写或编辑模块,并在hookDisplayHeader方法添加此片段:

$this->context->smarty->assign(array(
    'telnumber' => Configuration::get('BLOCKCONTACT_TELNUMBER') 
)); 
+0

既不是第一种也不是第二种方式不起作用 –

+0

您是否禁用了缓存?确保填充了'BLOCKCONTACT_TELNUMBER',并且相信我,该片段在100%下工作:) – sarcom

+0

Prestashop 1.6.1.4,没有缓存,BLOCKCONTACT_TELNUMBER不为空(在页脚钩子中显示电话号码) - 什么也不显示。 –

你可以把这个代码在你的主题中任何tpl文件;有用!!!

{if Configuration::get('BLOCKCONTACT_TELNUMBER') != ''} 
    <span>{Configuration::get('BLOCKCONTACT_TELNUMBER')}</span> 
{/if} 

确保您已在名为“联系块

+0

我的朋友,这是'我已经说过的'相同的技巧:)但他说不行... – sarcom

+0

是啊!但有一些额外的喜欢检查模块电话添加.... –