使用 smarty 获取当前 prestashop 页面的 url

Get url of current prestashop page using smarty

我有两家店铺 toorakcomputerservices.com.au 和 malverncomputerservices.com.au

我正在使用多店功能。所有数据似乎都很好,但我在 .tpl 中修改的 cms 页面由这两个站点共享。 我的版权声明是

版权所有 © toorakcomputerservices.com.au 1997-2015

/public_html/themes/default-bootstrap/modules/blockcms/blockcms.tpl

但这两个站点共享。我想要他们不同的版权。

我想我可以使用 if else 语句来检查哪个站点正在尝试访问该页面并相应地显示通知。

{assign var="url" value=$smarty.server.HTTP_HOST$smarty.server.REQUEST_URI}
{if $url=="http://toorakcomputerservices.com.au}
<div>
        Copyright &copy; toorakcomputerservices.com.au 1997-2015 
</div>
{else}
<div>
        Copyright &copy; malverncomputerservices.com.au 1997-2015 
</div>
{/if}

但这显示错误。我试图在论坛上找到其他解决方案,但它们都显示错误。我不太熟悉 smarty,所​​以我需要帮助。 谢谢

最好用register header hook或display header hook创建新模块,并从hook将当前商店url分配给smarty,你可以在你的tpl

中使用分配的变量
public function install(){
  return parent::install() && $this->registerHook('displayHeader');
}

public function hookdisplayHeader($params){
 /// here assign shop url to smarty
}

你可以这样做:

{if $smarty.server.HTTP_HOST=="toorakcomputerservices.com.au"}
  <div>
    Copyright &copy; toorakcomputerservices.com.au 1997-2015 
  </div>
{else}
  <div>
    Copyright &copy; malverncomputerservices.com.au 1997-2015 
  </div>
{/if}

但我认为这样会更优雅:

<div>
  Copyright &copy; {$smarty.server.HTTP_HOST} 1997-2015 
</div>