Одна из ключевых особенностей и преимуществ SEO Yoast плагина — возможность формировать SEO тексты по шаблону. Это существенно повышает шансы попадания страниц сайта в топ-выдачу поисковых систем. Увеличивает трафик и как следствие доходы от сайта.
Для шаблона есть множество готовых меток «из коробки». Но иногда стандартных меток не хватает. И возникает задача — написать свою метку.
Пример задачи и проблемы
Есть иерархическая категория «Территория», где термы верхнего уровня это страна, а нижние термы — города. При выводе записей по городу, нужно чтобы в заголовок страницы попадала страна. Такой метки нет.
Добавим свой тег %%term_first_ancestor%%
Этот тег позволит выводить в заголовке первого предка иерархической таксономии.
add_action('wpseo_register_extra_replacements', function() {
wpseo_register_var_replacement(
'%%term_first_ancestor%%',
$callback = function() {
$text = '';
if ( ! is_tax()) {
return $text;
}
$term = get_term(get_queried_object()->term_id);
$ancestors = get_ancestors($term->term_id, $term->taxonomy, 'taxonomy');
$ancestors = array_reverse($ancestors);
if ( ! $top_ancestor_id = @$ancestors[0]) {
return $text;
}
$top_ancestor = get_term($ancestors[0]);
$text = $top_ancestor->name;
return $text;
},
'advanced',
'get name first ancestor'
);
}
);