Как создать автоматический заголовок для постов в WordPress с помощью кода и плагинов

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

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

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

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

Использование хука wpmark_autotitle для автоматической генерации заголовков

В WordPress для изменения заголовка перед сохранением записи можно использовать хук save_post. Ниже пример функции wpmark_autotitle_generate, которая проверяет, есть ли заголовок у записи, и если нет — задаёт его автоматически согласно шаблону.

function wpmark_autotitle_generate( $post_id ) {
    // Проверяем, что это не автосохранение
    if ( defined('DOING_AUTOSAVE') && DOING_AUTOSAVE ) return;

    // Получаем объект поста
    $post = get_post( $post_id );
    if ( !$post || $post->post_type !== 'post' ) return;

    // Если заголовок уже есть, ничего не меняем
    if ( !empty( $post->post_title ) ) return;

    // Пример шаблона заголовка: 'Статья №{ID} от {Дата}'
    $date = date_i18n( 'd.m.Y', strtotime( $post->post_date ) );
    $new_title = sprintf( 'Статья №%d от %s', $post_id, $date );

    // Обновляем заголовок
    wp_update_post( [
        'ID' => $post_id,
        'post_title' => $new_title
    ] );
}
add_action( 'save_post', 'wpmark_autotitle_generate' );

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

Расширение функции: использование пользовательских полей в заголовке

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

function wpmark_autotitle_generate( $post_id ) {
    if ( defined('DOING_AUTOSAVE') && DOING_AUTOSAVE ) return;
    $post = get_post( $post_id );
    if ( !$post || $post->post_type !== 'post' ) return;
    if ( !empty( $post->post_title ) ) return;

    $subtitle = get_post_meta( $post_id, 'wpmark_subtitle', true );
    $date = date_i18n( 'd.m.Y', strtotime( $post->post_date ) );
    if ( $subtitle ) {
        $new_title = sprintf( 'Статья: %s (%s)', $subtitle, $date );
    } else {
        $new_title = sprintf( 'Статья №%d от %s', $post_id, $date );
    }

    wp_update_post( [
        'ID' => $post_id,
        'post_title' => $new_title
    ] );
}
add_action( 'save_post', 'wpmark_autotitle_generate' );

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

Плагины для автоматической генерации заголовков в WordPress

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

  • Auto Post Title: простой плагин, который подставляет шаблонный заголовок для новых постов. Позволяет использовать переменные, такие как дата, ID, категории.
  • Title Experiments Free: позволяет создавать заголовки на основе условий и автоматизировать их генерацию с A/B тестированием. Полезно для оптимизации SEO.
  • Custom Post Type Auto Title: подходит для сайтов с кастомными типами записей, автоматизирует заголовки по заданным шаблонам.

Все эти плагины доступны в официальном репозитории WordPress. Для установки через админку перейдите в «Плагины» → «Добавить новый» и введите название плагина.

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

Как интегрировать автоматические заголовки с WP REST API

Если вы используете REST API для создания постов с внешних сервисов, важно, чтобы заголовки генерировались автоматически и там. Для этого можно использовать тот же хук save_post, который работает и при создании через API.

Пример: при создании записи через REST API без заголовка, функция wpmark_autotitle_generate сработает и задаст заголовок перед сохранением.

Если нужно, можно добавить кастомный эндпоинт, который будет возвращать автоматически сгенерированные заголовки для новых данных — это удобно для интеграций и внешних приложений.

Как отключить автоматическую генерацию заголовков для отдельных категорий или типов постов

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

function wpmark_autotitle_generate( $post_id ) {
    if ( defined('DOING_AUTOSAVE') && DOING_AUTOSAVE ) return;
    $post = get_post( $post_id );
    if ( !$post || $post->post_type !== 'post' ) return;
    if ( !empty( $post->post_title ) ) return;

    // Получаем категории
    $categories = wp_get_post_categories( $post_id );
    // ID категории, для которой не нужно генерировать заголовок
    $exclude_cat_id = 5;
    if ( in_array( $exclude_cat_id, $categories ) ) return;

    $date = date_i18n( 'd.m.Y', strtotime( $post->post_date ) );
    $new_title = sprintf( 'Автозаголовок №%d от %s', $post_id, $date );

    wp_update_post( [
        'ID' => $post_id,
        'post_title' => $new_title
    ] );
}
add_action( 'save_post', 'wpmark_autotitle_generate' );

Таким образом, вы сможете тонко настраивать поведение и не мешать ручной работе редакторов.

Заключение по теме автоматического создания заголовков

Автоматизация заголовков — мощный инструмент для увеличения скорости публикации и улучшения качества контента. Используя приведённые примеры кода и плагины, вы сможете быстро настроить процесс на своём сайте WordPress.

Для более глубокой автоматизации и интеграции с отзывами и пользовательским контентом советуем обратить внимание на решения от WPGShop, которые позволяют расширять функционал сайта без лишних усилий.

Как использовать хуки для изменения отсутствующих пользовательских данных в WooCommerce
18.04.2026
Как создать автоматический резервный копии в WordPress без плагинов
27.02.2026
Как удалить и заблокировать удалённые пользователи WordPress
12.02.2026
Как отключить ревизии постов в WordPress для удаления старых версий
02.03.2026
Как избежать конфликтов между плагинами в WordPress
25.12.2025