Реализация метаданных для архивной страницы, если Yoast SEO не работает

к статьям

Во время разработки корпоративного сайта для клиента я столкнулся с ситуацией, когда метаданные для архивной страницы кастомного типа записей не отображались через SEO-плагин. В моем случае использовался плагин Yoast SEO, однако для архивной страницы services title и description не выводились.

Чтобы решить проблему и при этом оставить удобное редактирование для менеджеров сайта, я реализовал собственную систему управления метаданными с помощью Advanced Custom Fields (ACF).

Такой подход часто используется на корпоративных сайтах, где важно дать клиенту возможность редактировать SEO-поля через административную панель.

Создание SEO полей через ACF

Сначала я создал Option Page в ACF, где будут храниться SEO-поля для страницы архива.

В functions.php добавляем страницу настроек:

После этого в ACF Field Group создаем два поля:

  • services_seo_title
  • services_seo_description

Эти поля будут доступны в админке на странице настроек.

Добавление SEO Title через functions.php

Далее нужно перехватить фильтр Yoast SEO и подставить наши значения из ACF.

Как работает код

  • Используется фильтр wpseo_title.
  • Проверяется, является ли страница архивом services.
  • Получается значение из ACF с помощью get_field.
  • Если поле заполнено — оно заменяет стандартный SEO title.
  • Добавление Meta Description
  • Аналогичным образом реализуется meta description.

Добавление Meta Description

Аналогичным образом реализуется meta description.

Логика работы

  • используется фильтр wpseo_metadesc
  • проверяется архивная страница
  • подтягивается description из ACF
  • если поле заполнено — оно используется как meta description

Результат

В результате клиент получает удобный интерфейс для редактирования SEO-метаданных:

Админка WordPress → Theme Settings → Services Page

Здесь можно редактировать:

  • SEO Title
  • Meta Description

Преимущества такого подхода

  • SEO-поля можно редактировать без доступа к коду
  • решение работает даже если SEO-плагин некорректно обрабатывает архивы
  • удобно использовать на корпоративных сайтах
  • легко масштабируется для других архивных страниц