Мне было интересно, есть ли более эффективный способ создания тегов hreflang, просто используя жидкость в BC, без необходимости создавать webapp.Создание тегов hreflang только с использованием Liquid in Business катализатора
Я пробовал этот способ, который имеет смысл, но по какой-то причине он не работает.
{% capture pagURL -%}{module_pageaddress}{% endcapture -%}
{% if pagURL contains "http://us." -%}
<link rel="alternate" href="{{ pagURL}}" hreflang="en-us" />
<link rel="alternate" href="{{ pagURL | replace: 'http://us', 'http://www' }}" hreflang="en-uk" />
<link rel="alternate" href="{{ pagURL | replace: 'http://us', 'http://au' }}" hreflang="en-au" />
<link rel="alternate" href="{{ pagURL | replace: 'http://us', 'http://eu' }}" hreflang="en" />
{% elsif pagURL contains "http://au." -%}
<link rel="alternate" href="{{ pagURL}}" hreflang="en-au" />
<link rel="alternate" href="{{ pagURL | replace: 'http://au', 'http://www' }}" hreflang="en-uk" />
<link rel="alternate" href="{{ pagURL | replace: 'http://au', 'http://us' }}" hreflang="en-us" />
<link rel="alternate" href="{{ pagURL | replace: 'http://au', 'http://eu' }}" hreflang="en" />
{% elsif pagURL contains "http://eu." -%}
<link rel="alternate" href="{{ pagURL}}" hreflang="en" />
<link rel="alternate" href="{{ pagURL | replace: 'http://eu', 'http://us' }}" hreflang="en-us" />
<link rel="alternate" href="{{ pagURL | replace: 'http://eu', 'http://au' }}" hreflang="en-au" />
<link rel="alternate" href="{{ pagURL | replace: 'http://eu', 'http://www' }}" hreflang="en-uk" />
{% elseif pagURL contains "http://www." -%}
<link rel="alternate" href="{{ pagURL}}" hreflang="en-uk" />
<link rel="alternate" href="{{ pagURL | replace: 'http://www', 'http://us' }}" hreflang="en-us" />
<link rel="alternate" href="{{ pagURL | replace: 'http://www', 'http://au' }}" hreflang="en-au" />
<link rel="alternate" href="{{ pagURL | replace: 'http://www', 'http://eu' }}" hreflang="en" />
{% else -%}
{% endif -%}
Странная деталь, следующая она работает на той же странице.
{% capture pagURL -%}{module_pageaddress}{% endcapture -%}
{{ pagURL}}<br>
{{ pagURL | replace: 'http://www', 'http://us' }}<br>
{{ pagURL | replace: 'http://www', 'http://au' }}<br>
{{ pagURL | replace: 'http://www', 'http://eu' }}<br>
И это также работает
{{ pagURL | replace: 'http://www', 'http://us' | prepend: '<link rel="alternate" href="' | append: '" hreflang="en-us" />' }}
Чем короче код, тем лучше, конечно.
Код действительно отлично работает на каждой странице, за исключением домашней страницы. – Daut
Только вопрос: есть ли причина, по которой «pagURL» и «elsif» отсутствуют «e»? – Luke
'' pagURL '' - это переменная, она объявлена с помощью '' capture '', '' elsif '' является правильным способом записи «else if» в жидкости, BC. – Daut