Как добавить динамические атрибуты alt к картинкам в WordPress для SEO и доступности

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

Почему важно использовать правильные атрибуты alt

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

Если атрибут alt отсутствует или плохо заполнен, это негативно влияет на SEO и ухудшает доступность сайта.

Поэтому автоматизация заполнения alt с использованием данных страницы или поста — отличная практика.

Добавление динамических alt через фильтр wp_get_attachment_image_attributes

Использование фильтра для динамического alt

В WordPress для вывода изображения часто используется функция wp_get_attachment_image(). У неё есть фильтр wp_get_attachment_image_attributes, который позволяет изменить атрибуты изображения перед выводом.

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

Пример кода для динамического alt

function wpboot_dynamic_alt_attributes($attr, $attachment, $size) {
    // Если alt уже есть — не трогаем
    if (!empty($attr['alt'])) {
        return $attr;
    }

    // Получаем ID поста из запроса
    global $post;
    if (!$post) {
        return $attr;
    }

    // Формируем alt из названия поста и названия изображения
    $post_title = $post->post_title;
    $image_title = get_the_title($attachment->ID);

    $attr['alt'] = sprintf('Изображение "%s" для статьи "%s"', $image_title, $post_title);
    return $attr;
}
add_filter('wp_get_attachment_image_attributes', 'wpboot_dynamic_alt_attributes', 10, 3);

Этот код проверяет, есть ли у изображения атрибут alt. Если нет, то формирует его из заголовка поста и названия изображения. Таким образом, alt становится более информативным и релевантным.

Автоматическое заполнение alt при загрузке изображения

Добавление alt на этапе загрузки через хук add_attachment

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

Пример кода:

function wpboot_set_alt_on_upload($attachment_ID) {
    $attachment = get_post($attachment_ID);
    if ($attachment->post_mime_type && strpos($attachment->post_mime_type, 'image/') === 0) {
        $title = $attachment->post_title;
        // Проверяем, есть ли уже alt
        $alt = get_post_meta($attachment_ID, '_wp_attachment_image_alt', true);
        if (empty($alt)) {
            // Устанавливаем alt равным названию файла без расширения
            $alt_text = pathinfo($title, PATHINFO_FILENAME);
            update_post_meta($attachment_ID, '_wp_attachment_image_alt', $alt_text);
        }
    }
}
add_action('add_attachment', 'wpboot_set_alt_on_upload');

Этот код автоматически записывает в мета-данные изображения alt, если он отсутствует. В качестве alt используется название файла без расширения.

Плагины для автоматизации alt и SEO изображений

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

  • SEO Friendly Images — автоматически добавляет alt и title к изображениям, используя шаблоны.
  • Auto Image Attributes From Filename With Bulk Updater — заполняет alt и title на основе имени файла и позволяет обновлять их массово.
  • WPGPT — плагин с ИИ-функциями, который может генерировать описания alt автоматически, используя ИИ (подробнее на wpshop.ru).

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

Рекомендации по формированию alt для SEO и доступности

При создании alt следуйте простым рекомендациям:

  • Alt должен точно описывать содержимое изображения.
  • Не используйте ключевые слова без необходимости — alt должен быть естественным и полезным.
  • Для декоративных изображений используйте пустой alt alt="", чтобы экранные читалки их пропускали.
  • Динамическое формирование alt должно основываться на контексте страницы или поста.

Эти советы помогут улучшить SEO и пользовательский опыт.

Расширенный пример: alt с использованием ACF и пользовательских полей

Если на сайте используется Advanced Custom Fields (ACF) или другие плагины для кастомных полей, можно формировать alt из пользовательских полей.

Пример функции для динамического alt с проверкой поля "custom_alt":

function wpboot_dynamic_alt_acf($attr, $attachment, $size) {
    if (!empty($attr['alt'])) {
        return $attr;
    }

    global $post;
    if (!$post) {
        return $attr;
    }

    // Попытка получить alt из пользовательского поля ACF
    $custom_alt = get_field('custom_alt', $attachment->ID);
    if ($custom_alt) {
        $attr['alt'] = $custom_alt;
        return $attr;
    }

    // Иначе формируем из заголовка поста и названия изображения
    $post_title = $post->post_title;
    $image_title = get_the_title($attachment->ID);
    $attr['alt'] = sprintf('Изображение "%s" для статьи "%s"', $image_title, $post_title);
    return $attr;
}
add_filter('wp_get_attachment_image_attributes', 'wpboot_dynamic_alt_acf', 10, 3);

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

Как удалить неиспользуемые таблицы в базе данных WordPress
03.02.2026
WooCommerce: автоматическое изменение стоимости товара при применении купона
19.06.2026
Как добавить собственные свойства в meta-теги WordPress
10.11.2025
Как автоматизировать удаление нерабочих хуков в WordPress
12.04.2026
Как автоматически отключать плагины в WordPress по расписанию
13.01.2026