Измените тег заголовка страницы поиска продуктов

Вопрос или проблема

Да, я видел некоторые ответы на разные вопросы, но они не подошли к моей ситуации.

В моей теме включен тег заголовка.

Заголовок в функции wp_get_document_title() отличается от реального заголовка на моей странице поиска, который выглядит как “Вы искали %search% – %site_name%”.

Мне нужно перевести заголовок, ничего больше. Я искал You Searched в functions_php и в каждом другом .php файле в woocommerce, связанном с продуктами или поиском, и не смог его найти.

Я буду признателен за любую помощь. Спасибо !

В моем случае эта проблема была вызвана плагином WordPress – Yoast Seo.

Посмотрите вашу базу данных mySql, таблицу wp_options и найдите option_name = wpseo_titles.

В поле “option_value” вы можете найти строку “You Searched for” и заменить ее, например, на “Deine Suche nach”.

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

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

function custom_search_page_title($title_parts) {
    if (is_search()) {
        $title_parts['title'] = sprintf(__('Вы искали %s - %s', 'ваш-текстовый-домен'), get_search_query(), get_bloginfo('name'));
    }
    return $title_parts;
}
add_filter('document_title_parts', 'custom_search_page_title');

Замените ваш-текстовый-домен на текстовый домен вашей темы или плагина.

Для перевода заголовка вы можете использовать функции перевода, такие как __(), esc_html__() или sprintf(), если вам нужно вставить динамическое содержимое, например, запрос поиска.

Ответ или решение

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

Проблема:

Вы заметили, что заголовок, возвращаемый функцией wp_get_document_title(), отличается от реального заголовка на вашей странице поиска, которая отображает "You Searched For %search% – %site_name%". Вам необходимо перевести данный заголовок.

Решение:

Для изменения и перевода заголовка страницы поиска, вам следует добавить пользовательскую функцию, используя хук фильтра document_title_parts. Это можно сделать, добавив следующий код в файл functions.php вашей темы или в ваш плагин:

function custom_search_page_title($title_parts) {
    if (is_search()) {
        $title_parts['title'] = sprintf(__('Вы искали %s - %s', 'your-text-domain'), get_search_query(), get_bloginfo('name'));
    }
    return $title_parts;
}
add_filter('document_title_parts', 'custom_search_page_title');

Объяснение:

  1. Проверка на страницу поиска: Функция is_search() проверяет, находится ли пользователь на странице поиска.
  2. Изменение заголовка: С помощью sprintf() мы формируем новый заголовок, в который вставляется поисковый запрос (получаемый с помощью get_search_query()) и название вашего сайта (получаемое с помощью get_bloginfo('name')).
  3. Локализация: Используется функция __(), чтобы сделать заголовок доступным для перевода. Замените 'your-text-domain' на текстовый домен вашей темы или плагина, чтобы обеспечить совместимость с системой перевода WordPress.

Дополнительно:

Если причина проблемы связана с плагином Yoast SEO, вы можете проверить вашу базу данных MySQL, в частности, таблицу wp_options, на наличие записи с option_name = wpseo_titles. В поле option_value вы можете найти строку "You Searched For" и заменить её на требуемую вам локализацию, например, "Вы искали".

Заключение:

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

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

Капча загружается...