url - 如何在 Prestashop 的 TPL 格式中添加 hreflang
问题描述
我有一个多语言网站,为了优化 SEO,我想在标题中添加“hreflang”元标记。
这些语言被组织在子文件夹中,例如:
- www.example.com/en
- www.example.com/fr
- www.example.com/de
等等......所以我想将语言子文件夹信息检索到标签中:
**<link rel="alternate" hreflang="$insert_language_of_current_page" href="www.example.com/en">**
但我对 Prestashop 的 TPL 格式不是很熟悉。是否已经有一个参数可以做到这一点?
感谢帮助。
解决方案
您可以使用此模块,它会自动将 href langs rel 添加到您的商店: https ://addons.prestashop.com/en/seo-natural-search-engine-optimization/40888-seo-smo-assistant.html
如果你想自己做,对于 PrestaShop 1.7 找到这个文件:
主题/[你的主题]/templates/_partials/head.tpl
将此代码添加到文件末尾:
{foreach from=$urls.alternative_langs item=pageUrl key=code}
<link rel="alternate" href="{$pageUrl}" hreflang="{$code}">
{/foreach}
对于 PS1.6,您需要找到此文件:
主题/[你的主题]/header.tpl
在此文件中,将以下代码放在</head>
标记之前:
{if isset($language_code) && $language_code}
{foreach from=$languages key=k item=language name="languages"}
{if $language.iso_code == $lang_iso}
<!-- Current lang -->
<link rel="alternate" hreflang="{$language_code|escape:'html':'UTF-8'}" href="{if isset($force_ssl) && $force_ssl}{$base_dir_ssl|escape:'html':'UTF-8'}{else}{$base_dir|escape:'html':'UTF-8'}{/if}">
{/if}
{/foreach}
<!-- Other langs (if exist) -->
{foreach from=$languages key=k item=language name="languages"}
{if $language.iso_code != $lang_iso}
<link rel="alternate" hreflang="{$language.iso_code|escape:'html':'UTF-8'}" href="{if isset($force_ssl) && $force_ssl}{$base_dir_ssl|escape:'html':'UTF-8'}{else}{$base_dir|escape:'html':'UTF-8'}{/if}{$language.iso_code|escape:'html':'UTF-8'}/">
{/if}
{/foreach}
{/if}
推荐阅读
- javascript - Array(4) 有 6 个元素
- openssl - 无法使用 ejabberd_app:start(normal,[]) 启动 ejabberd
- azure - Azure 存储队列同时提取所有消息
- ios - iOS 后台定位应用在 15 或 17 小时后自动终止
- python - python scrapy响应统计
- javascript - VueJS 应用程序中缺少静态文件
- laravel - 如何在 laravel 中访问 eloquent 的属性
- mysql - 滚动 12 个月的数据 - SQL
- dns - 从 www 到 root 的 DNS CNAME 仍然显示 www
- python - 在第 2 维通过相同的索引扩展列表