Расширение HeadMeta
Компонент HeadMeta расширяет Placeholder
HTML-элемент <meta> используется для предоставления метаинформации о вашем HTML-документе — обычно это ключевые слова, набор символов документа, директивы кэширования и т. д. Мета-теги могут быть либо типа http-equiv, либо типа name, они должны содержать атрибут content и могут также иметь модификаторы lang или scheme.
Помощник HeadMeta поддерживает следующие методы для установки и добавления мета-тегов:
appendName($keyValue, $content, $conditionalName)offsetSetName($index, $keyValue, $content, $conditionalName)prependName($keyValue, $content, $conditionalName)setName($keyValue, $content, $modifiers)appendHttpEquiv($keyValue, $content, $conditionalHttpEquiv)offsetSetHttpEquiv($index, $keyValue, $content, $conditionalHttpEquiv)prependHttpEquiv($keyValue, $content, $conditionalHttpEquiv)setHttpEquiv($keyValue, $content, $modifiers)appendProperty($property, $content, $modifiers)offsetSetProperty($index, $property, $content, $modifiers)prependProperty($property, $content, $modifiers)setProperty($property, $content, $modifiers)
Элемент $keyValue используется для определения значения для ключа name или http-equiv; $content — это значение для ключа content, а $modifiers — это необязательный ассоциативный массив, который может содержать ключи для lang и/или scheme.
You may also set meta tags using the headMeta() helper method, which has the following signature:
headMeta($content, $keyValue, $keyType = 'name', $modifiers = [], $placement = 'APPEND').
Вы также можете установить мета-теги, используя метод помощника headMeta(), который имеет следующую сигнатуру:
headMeta($content, $keyValue, $keyType = 'name', $modifiers = [], $placement = 'APPEND').
$keyValue — это содержимое для ключа, указанного в $keyType, который должен быть либо name, либо http-equiv.
$placement может принимать значения SET (перезаписывает все ранее сохраненные значения), APPEND (добавляет в конец стека) или PREPEND (добавляет в начало стека).
HeadMeta переопределяет каждый из методов append(), offsetSet(), prepend() и set(), чтобы обеспечить использование специальных методов, перечисленных выше. Внутри он хранит каждый элемент как токен stdClass, который затем сериализует с помощью метода itemToString(). Это позволяет вам выполнять проверки по элементам в стеке и, при необходимости, изменять эти элементы, просто модифицируя возвращаемый объект.
Основное использование
Вы можете задать новый мета-тег в любое время. Обычно вы указываете правила кэширования на стороне клиента или ключевые слова для SEO.
Например, если вы хотите указать SEO-описание, вы создадите мета-тег с именем 'keywords' и содержимым, представляющим ключевые слова, которые вы хотите ассоциировать с вашей страницей:
{# установка мета-описания #}
{% do pimcore_head_meta().appendName('description', 'Мое SEO-описание для моей отличной страницы') %}
{# установка тегов Open Graph #}
{% do pimcore_head_meta().setProperty('og:title', 'название моей статьи') %}
{% do pimcore_head_meta().setProperty('og:type', 'article') %}
{# установка типа содержимого и набора символов #}
{% do pimcore_head_meta().appendHttpEquiv('Content-Type', 'text/html; charset=UTF-8').appendHttpEquiv('Content-Language', 'en-US') %}
Когда вы будете готовы разместить ваши мета-теги в шаблоне, просто выведите помощник:
{{ pimcore_head_meta() }}
Вы можете предложить улучшение документации или задать вопрос в комментариях.
Если вам нужна полноценная консультация — вы можете заказать её на нашем сайте.