wp-kurs.ru wordpress WP-Kurs

Как автоматически изменять мета-описание в WordPress

Мета-описание (meta description) играет важную роль в SEO и привлечении пользователей из поисковых систем. Для сайтов на WordPress часто требуется гибко и автоматически изменять мета-описание страниц и записей, чтобы улучшить CTR и релевантность выдачи.

Почему важно автоматическое изменение мета-описания

Ручное заполнение мета-описаний для всех страниц становится неудобным и трудоемким, особенно для больших сайтов. Автоматизация позволяет:

  • Экономить время при публикации контента.
  • Избежать дублирования описаний.
  • Динамически учитывать изменения контента на странице.
  • Улучшить SEO за счет более релевантных описаний.

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

Основные способы автоматического изменения мета-описания в WordPress

Использование SEO-плагинов с динамическими шаблонами

Самый простой способ — использовать популярные SEO-плагины, которые поддерживают шаблоны для мета-описаний:

  • Yoast SEO — позволяет задать шаблон, например: %%title%% – Купить по выгодной цене на wp-kurs.ru.
  • All in One SEO Pack — аналогично, поддерживает переменные для динамического заполнения.
  • Clearfy Pro — оптимизация SEO с возможностью гибко настраивать мета-теги.

Преимущество — не требует программирования, легко настраивается в админке.

Автоматическое изменение мета-описания через код в functions.php

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

Добавьте следующий пример в файл functions.php вашей темы или в собственный плагин:

function wp_kurs_dynamic_meta_description() {
    if (is_singular('post')) {
        global $post;
        $custom_description = get_post_meta($post->ID, '_wp_kurs_custom_meta_desc', true);
        if ($custom_description) {
            echo '<meta name="description" content="' . esc_attr($custom_description) . '" />';
        } else {
            $excerpt = wp_trim_words(strip_tags($post->post_content), 25);
            echo '<meta name="description" content="' . esc_attr($excerpt) . '" />';
        }
    } elseif (is_home() || is_front_page()) {
        echo '<meta name="description" content="Добро пожаловать на wp-kurs.ru — полезные статьи и руководства по WordPress." />';
    }
}
add_action('wp_head', 'wp_kurs_dynamic_meta_description');

Этот код проверяет, есть ли у записи пользовательское поле с мета-описанием, и если нет — формирует краткое описание из первых 25 слов контента. Для главной страницы выводится статичное описание.

Как добавить пользовательское поле для мета-описания в админке

Чтобы добавить удобный интерфейс для заполнения пользовательского мета-описания, используйте следующий пример с мета-боксом:

function wp_kurs_add_meta_box() {
    add_meta_box('wp_kurs_meta_desc_box', 'Мета-описание', 'wp_kurs_meta_desc_box_callback', 'post', 'normal', 'high');
}
add_action('add_meta_boxes', 'wp_kurs_add_meta_box');

function wp_kurs_meta_desc_box_callback($post) {
    wp_nonce_field('wp_kurs_save_meta_desc', 'wp_kurs_meta_desc_nonce');
    $value = get_post_meta($post->ID, '_wp_kurs_custom_meta_desc', true);
    echo '<textarea style="width:100%;" rows="4" name="wp_kurs_custom_meta_desc">' . esc_textarea($value) . '</textarea>';
}

function wp_kurs_save_meta_desc($post_id) {
    if (!isset($_POST['wp_kurs_meta_desc_nonce']) || !wp_verify_nonce($_POST['wp_kurs_meta_desc_nonce'], 'wp_kurs_save_meta_desc')) {
        return;
    }
    if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) {
        return;
    }
    if (isset($_POST['wp_kurs_custom_meta_desc'])) {
        update_post_meta($post_id, '_wp_kurs_custom_meta_desc', sanitize_text_field($_POST['wp_kurs_custom_meta_desc']));
    }
}
add_action('save_post', 'wp_kurs_save_meta_desc');

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

Рекомендации по оптимизации мета-описаний

При создании мета-описаний учитывайте следующие правила:

  • Длина должна быть около 120-160 символов, чтобы полностью отображаться в поиске.
  • Используйте ключевые слова, релевантные содержанию страницы.
  • Избегайте дублирования описаний на разных страницах.
  • Пишите привлекательный и информативный текст, стимулирующий переход.

Если используете плагины, например, Clearfy Pro или Yoast, они помогают контролировать эти аспекты.

Автоматическое изменение мета-описаний для таксономий и архивов

Для страниц категорий, меток и архивов также полезно динамически задавать мета-описания. Пример кода для категорий:

function wp_kurs_meta_description_category() {
    if (is_category()) {
        $category = get_queried_object();
        if ($category->description) {
            $desc = strip_tags($category->description);
        } else {
            $desc = 'Статьи категории ' . $category->name . ' на wp-kurs.ru';
        }
        echo '<meta name="description" content="' . esc_attr($desc) . '" />';
    }
}
add_action('wp_head', 'wp_kurs_meta_description_category');

Аналогично можно расширить для архивов по дате, автору и другим таксономиям.

Плагины для более продвинутого управления мета-описаниями

Если нужны более сложные сценарии (например, на основе пользовательских полей, условий или данных из сторонних API), обратите внимание на плагины:

  • Clearfy Pro — многофункциональный плагин для оптимизации и SEO.
  • WPRemark — для автоматического обновления и управления контентом.

Эти инструменты позволяют создавать гибкие правила и шаблоны для мета-тегов без глубоких знаний программирования.

×
Сделай свой сайт крутым!

Скидка -20% на премиум плагины WordPress

Выбрать плагин сейчас ⋙