Как удалить ТОЛЬКО тег title из функции wp_head() в WordPress?

12 нояб. 2016 г., 02:32:45
Просмотры: 23.3K
Голосов: 3

Я использую wordpress 4.6 и хочу удалить только тег title, который автоматически выводится WordPress, потому что мне нужно жестко прописать HTML-тег title в шаблоне.

Я предполагаю, что это должно быть что-то вроде:

add_action('wp_head', '//команда для удаления тега title');

но пока не нашел действующего решения.

0
Все ответы на вопрос 4
0
11

Вы можете увидеть всё, что добавляется в wp_head, в файле /wp-includes/default-filters.php.

Если ваша тема поддерживает тег заголовка, вы можете полностью удалить его с помощью remove_action:

remove_action( 'wp_head', '_wp_render_title_tag', 1 );

Хотя может быть проще/лучше использовать remove_theme_support( 'title-tag' ) в дочерней теме, что и проверяет _wp_render_title_tag перед выводом тега заголовка.

12 нояб. 2016 г. 03:44:00
0

WordPress 5.7.1 с установленным Yoast SEO Рабочий код:

add_filter('document_title_parts', '__return_empty_array', 10);
31 мая 2021 г. 16:51:24
1
if ( is_page('138') )
{
      // Если это страница с ID 138, скрываем заголовок
      add_filter( 'the_title', '__return_false' );
}

// Добавляем фильтр для вывода заголовка в head
add_filter('wp_head', function () {
    // Проверяем поддержку темы для тега title
    if (!current_theme_supports('title-tag')) {
        return;
    }

    // Проверяем, выполняется ли действие wp_head и является ли запись одиночной
    if (did_action('wp_head') || doing_action('wp_head') && is_single()) {
        // Получаем категории записи
        $categories = get_the_category();
        // Берем первую категорию, если их несколько
        $category = reset($categories);

        if ($category) {
            // Выводим заголовок в формате: "Название категории - Заголовок записи"
            echo '<title>' . $category->name . ' - ' . get_the_title() . '</title>' . "\n";
        }
    }
    // Выводим стандартный заголовок документа
    echo '<title>' . wp_get_document_title() . '</title>' . "\n";
});
26 мар. 2022 г. 04:46:46
Комментарии

Пожалуйста, [отредактируйте ваш ответ] и добавьте объяснение: почему это может решить проблему?

fuxia fuxia
26 мар. 2022 г. 13:07:43
1
add_filter( 'pre_get_document_title' , 'render_title' );
function render_title($title){
    return 'Новый заголовок ';
}
add_filter(  'document_title_parts' , 'render_title' );
function render_title($parts){
    $parts["title"] = "Мой префикс ". $parts["title"];
    return $parts;
}
26 мар. 2022 г. 04:54:08
Комментарии

Пожалуйста, [отредактируйте] ваш ответ и добавьте объяснение: почему это может решить проблему?

fuxia fuxia
26 мар. 2022 г. 13:08:38