Yoast SEO: как добавить свой тег для шаблона текстов?

Одна из ключевых особенностей и преимуществ 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'
    );

  }
);
Фото аватара
Anatolii I

Веб разработчик, специализация на лучших мировых практиках: WordPress, WooCommerce, NextJS, Strapi, JAMStack ...

Основные типы проектов: CMS, eCommerce, SEO, LMS, ECM, BPM

Подробнее...

Статей: 110

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *