Під час розробки корпоративного сайту для клієнта я зіткнувся з ситуацією, коли метадані для архівної сторінки кастомного типу записів не відображалися через плагін SEO. У моєму випадку використовувався Yoast SEO, але для архівної сторінки services title та description не виводилися.
Щоб вирішити проблему і при цьому залишити зручне редагування для менеджерів сайту, я реалізував власну систему керування метаданими за допомогою ACF (Advanced Custom Fields).
Такий підхід часто використовується на корпоративних сайтах, де важливо дати клієнту можливість редагувати SEO-поля через адмінку.
Створення SEO полів через ACF
Спочатку я створив Option Page у ACF, де будуть зберігатися SEO-поля для сторінки архіву.
В functions.php додаємо сторінку налаштувань:

Після цього у ACF Field Group створюємо два поля:
services_seo_titleservices_seo_description
Ці поля будуть доступні в адмінці на сторінці налаштувань.

Додавання SEO Title через functions.php
Далі потрібно перехопити фільтр Yoast SEO і підставити наші значення з ACF.

Як працює код
- Використовується фільтр
wpseo_title. - Перевіряється, чи є сторінка архівом
services. - Отримується значення з ACF через
get_field. - Якщо поле заповнене — воно замінює стандартний SEO title.
Додавання Meta Description
Аналогічно реалізується meta description.

Логіка роботи
- використовується фільтр
wpseo_metadesc - перевіряється архівна сторінка
- підтягується description з ACF
- якщо поле заповнене — воно використовується як meta description
Результат
У результаті клієнт отримує зручний інтерфейс для редагування SEO-метаданих:
Адмінка WordPress → Theme Settings → Services Page
Тут можна редагувати:
- SEO Title
- Meta Description

Переваги такого підходу
- SEO поля можна редагувати без доступу до коду
- рішення працює навіть якщо SEO-плагін некоректно обробляє архіви
- зручно використовувати на корпоративних сайтах
- легко масштабується для інших архівних сторінок