Как задать description для страницы в function.php

Как задать description для страницы в function.php

от автора

в

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

Почему мета-тег Description так важен?

Прежде чем мы перейдём к практике, давайте разберёмся, почему мета-тег description настолько важен. Этот тег помогает поисковым системам понять содержание вашей страницы. Более того, именно этот текст часто отображается в результатах поиска под заголовком страницы. Правильно составленный description может существенно повысить CTR (Click-Through Rate), что в конечном итоге увеличит трафик на ваш сайт.

«Мета-описание — это первое впечатление, которое пользователи получают о вашем сайте в результатах поиска. Сделайте его значимым и привлекающим внимание.» — Джон Мюллер, аналитик Google.

Основные принципы написания мета-тега Description

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

  • Краткость и лаконичность. Оптимальная длина — от 150 до 160 символов.
  • Уникальность. Каждая страница должна иметь своё уникальное описание.
  • Ключевые слова. Используйте релевантные ключевые слова, но избегайте «перенасыщенности».
  • Призыв к действию. Включите элементы, побуждающие кликнуть на ссылку.

Теперь, когда мы знаем, почему мета-тег description важен и как его правильно написать, перейдём к практике.

Задание мета-тега Description в function.php

Подготовка к работе

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

Добавление кода в function.php

Итак, чтобы задать мета-тег description для страниц вашего сайта через function.php, выполните следующие шаги:

  1. Откройте файл function.php, который находится в директории вашей темы (обычно wp-content/themes/ваша-тема/).
  2. Добавьте следующий код в конец файла:
function my_custom_meta_description() {
    if (is_single() || is_page()) {
        global $post;
        $description = strip_tags($post->post_excerpt ? $post->post_excerpt : wp_trim_words($post->post_content, 30));
        echo '<meta name="description" content="' . esc_attr($description) . '">' . "\n";
    }
}
add_action('wp_head', 'my_custom_meta_description');

Этот код проверяет, является ли текущая страница постом или страницей. Если это так, он берёт краткое описание поста или первые 30 слов содержимого и выводит их в мета-тег description.

Объяснение кода

Давайте разберём этот код подробнее:

  • is_single() и is_page() проверяют, является ли текущая страница постом или статической страницей соответственно.
  • global $post; позволяет нам получить одступ к текущему посту или странице.
  • strip_tags($post->post_excerpt ? $post->post_excerpt : wp_trim_words($post->post_content, 30)) — это условие, которое проверяет, есть ли краткое описание поста. Если его нет, используется первые 30 слов содержимого поста.
  • esc_attr($description) защищает содержимое мета-тега от потенциальных XSS-аатк.
  • add_action('wp_head', 'my_custom_meta_description') добавляет нашу функцию в хук wp_head, чтобы она выполнялась в <head> каждой страницы.

Улучшение кода

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

function my_custom_meta_description() {
    if (is_single() || is_page()) {
        global $post;
        $description = '';

        if (is_singular('product')) {
            // Специальное описание для продуктов (если используете WooCommerce)
            $description = get_post_meta($post->ID, '_yoast_wpseo_metadesc', true);
        }

        if (empty($description)) {
            $description = strip_tags($post->post_excerpt ? $post->post_excerpt : wp_trim_words($post->post_content, 30));
        }

        echo '<meta name="description" content="' . esc_attr($description) . '">' . "\n";
    }
}
add_action('wp_head', 'my_custom_meta_description');

Проверка результата

После внесения изменений сохраните файл и загрузите его на сервер. Затем откройте любую страницу вашего сайта и посмотрите исходный код (Ctrl+U в большинстве браузеров). Найдите мета-тег description и убедитесь, что он правильно установлен.


Автор статьи:

Обновлено:

30.05.2024


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *