Автоматическое изменение заголовков постов WordPress по заданным правилам

В процессе работы с WordPress иногда возникает задача массово изменить заголовки записей по определённому шаблону или правилу. Например, добавить префикс, суффикс, заменить слова или автоматически исправить форматирование. Решение таких задач вручную занимает много времени, особенно если записей сотни или тысячи. В этой статье мы разберём, как автоматизировать изменение заголовков постов с помощью кода и плагинов, а также рассмотрим примеры практической реализации.

Почему важно автоматическое изменение заголовков WordPress

Заголовок — важный элемент SEO и удобства пользователей. Иногда нужно привести заголовки к единому стилю, добавить бренд, убрать дублирующиеся слова или исправить ошибки. Ручное редактирование занимает много времени и неэффективно при больших объёмах контента.

Автоматизация позволяет:

  • Обеспечить единообразие названий;
  • Массово исправить ошибки и опечатки;
  • Добавить метки или категории в заголовки;
  • Автоматически обновлять заголовки при изменении метаданных;
  • Экономить время и силы редакторов.

Как изменить заголовки через код: пример функции для wpdeveloper

Для автоматического изменения заголовков можно использовать хук the_title, который срабатывает при выводе заголовка на сайте. Ниже пример функции, которая добавляет префикс к каждому заголовку:

function wpdeveloper_modify_post_title($title, $id = null) {
    if (is_admin() || !$id) {
        return $title; // не менять в админке и если нет ID
    }
    $prefix = 'WPDeveloper: ';
    // Проверяем, чтобы префикс не дублировался
    if (strpos($title, $prefix) !== 0) {
        $title = $prefix . $title;
    }
    return $title;
}
add_filter('the_title', 'wpdeveloper_modify_post_title', 10, 2);

Эта функция добавляет текст WPDeveloper: в начало каждого заголовка записи на фронтенде, не затрагивая админку.

Расширение функции для сложных правил

Можно добавить замену слов, удаление лишних пробелов, изменение регистра:

function wpdeveloper_advanced_modify_title($title, $id = null) {
    if (is_admin() || !$id) {
        return $title;
    }

    // Пример: заменить слово "старое" на "новое"
    $title = str_ireplace('старое', 'новое', $title);

    // Удалить двойные пробелы
    $title = preg_replace('/\s+/', ' ', $title);

    // Сделать первую букву заглавной
    $title = mb_convert_case($title, MB_CASE_TITLE, 'UTF-8');

    return $title;
}
add_filter('the_title', 'wpdeveloper_advanced_modify_title', 10, 2);

Массовое обновление заголовков в базе данных

Если нужно изменить заголовки не только на выводе, а реально обновить их в базе, стоит использовать WP_Query для перебора записей и функцию wp_update_post.

function wpdeveloper_bulk_update_post_titles() {
    $args = [
        'post_type' => 'post',
        'posts_per_page' => -1,
        'post_status' => 'publish',
    ];

    $query = new WP_Query($args);

    if ($query->have_posts()) {
        while ($query->have_posts()) {
            $query->the_post();
            $post_id = get_the_ID();
            $title = get_the_title($post_id);

            // Добавляем суффикс, если его нет
            $suffix = ' - Обновлено';
            if (substr($title, -strlen($suffix)) !== $suffix) {
                $new_title = $title . $suffix;
                wp_update_post([
                    'ID' => $post_id,
                    'post_title' => $new_title
                ]);
            }
        }
        wp_reset_postdata();
    }
}
// Запустить один раз, например, через admin_init или крон
add_action('admin_init', 'wpdeveloper_bulk_update_post_titles');

Важно запускать такие функции аккуратно, чтобы не создавать нагрузку и не обновлять записи повторно.

Полезные плагины для массового редактирования заголовков

Если не хочется писать код, можно использовать проверенные плагины:

  • Bulk Edit — позволяет массово менять заголовки, категории, мета-поля;
  • Title Remover — для скрытия или модификации заголовков на фронтенде;
  • Quick Bulk Post & Page Creator — для быстрого создания и редактирования множества записей;
  • WP All Import / Export — для импорта/экспорта с возможностью правки заголовков через CSV.

Для интеграции с плагином Clearfy Pro можно использовать функции оптимизации и очистки заголовков, что дополнительно улучшит структуру и SEO.

Автоматическое обновление заголовков при изменении метаполей

Иногда заголовок зависит от метаданных записи. Чтобы автоматически обновлять заголовок при изменении метаполя, используйте хук updated_post_meta:

function wpdeveloper_update_title_on_meta_change($meta_id, $post_id, $meta_key, $meta_value) {
    if ($meta_key === 'custom_field') {
        $title = get_the_title($post_id);
        $new_title = $title . ' [' . sanitize_text_field($meta_value) . ']';

        wp_update_post([
            'ID' => $post_id,
            'post_title' => $new_title
        ]);
    }
}
add_action('updated_post_meta', 'wpdeveloper_update_title_on_meta_change', 10, 4);

Такой подход позволяет динамически синхронизировать заголовок с дополнительной информацией.

Резюме и рекомендации по использованию

Автоматическое изменение заголовков позволяет существенно упростить работу с большим количеством контента. Рекомендуется начинать с фильтра the_title для вывода, если нужна временная модификация, и переходить к массовому обновлению базы данных при необходимости постоянных изменений.

Всегда делайте резервные копии перед массовыми операциями и тестируйте функции на тестовом сайте. Используйте плагины для упрощения, если не хотите писать код.

Для дополнительной автоматизации и расширения функционала можно интегрировать решения с такими инструментами, как WPRemark или WPGPT, что позволит создавать интеллектуальные заголовки на основе ИИ.

Автоматическое удаление временно неактивных заказов WooCommerce
06.05.2026
Как избежать проблем с кэшированием в WooCommerce: практическое руководство
03.06.2026
Как удалить заказы WooCommerce по клиенту и периоду через код: практическое руководство
07.06.2026
Как использовать хуки в WordPress для настройки темы: практические примеры
20.11.2025
Безопасные автообновления WordPress: настройка и контроль
29.11.2025