Функция wp_head() — это хук WordPress, который используется для добавления контента в секцию <head> вашего HTML-документа. Она выполняет вызов do_action('wp_head'), что позволяет подключить к этой точке разнообразные CSS, JavaScript, мета-теги и другой HTML-код.
wp_head();
Параметры
- Функция не принимает параметров.
Что делает wp_head()?
wp_head() запускает действие wp_head, к которому подключены различные функции и хуки, добавляющие важные мета-теги, ссылки на стили, скрипты и другие элементы в <head> вашей страницы. Это важно для правильного функционирования темы и плагинов.
Примеры использования
Пример 1: Стандартное использование в файле header.php
Вот как обычно выглядит вызов функции wp_head() в файле header.php вашей темы:
<!DOCTYPE html>
<html <?php language_attributes(); ?>>
<head>
<meta charset="<?php bloginfo( 'charset' ); ?>">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="profile" href="https://gmpg.org/xfn/11">
<?php wp_head(); ?>
</head>
<body <?php body_class(); ?>>
Этот вызов размещает wp_head() непосредственно перед закрывающим тегом </head>, что позволяет WordPress и плагинам добавлять необходимый код в эту часть страницы.
Пример 2: Добавление пользовательского CSS через wp_enqueue_style
Чтобы добавить CSS-файл через wp_head(), используйте функцию wp_enqueue_style. Этот метод подходит для разработки плагинов.
function add_custom_css() {
wp_enqueue_style('custom_style', get_stylesheet_directory_uri() . '/css/custom-style.css', array(), null);
}
add_action('wp_enqueue_scripts', 'add_custom_css');
Этот код добавляет CSS-файл custom-style.css, который находится в папке css вашей темы.
Пример 3: Вставка стилей напрямую в <head>
Хотя это не рекомендуется, вы можете добавить стили напрямую в <head> с помощью тега <style>.
function add_inline_css() {
?>
<style>
#example { display: none; }
</style>
<?php
}
add_action('wp_head', 'add_inline_css');
Этот код добавляет CSS-правило, скрывающее элемент с id example.
Пример 4: Отключение ненужных стилей
Если вам нужно удалить ненужные стили, подключенные плагином, используйте функцию wp_dequeue_style.
function remove_unwanted_css() {
wp_dequeue_style('unwanted_style');
}
add_action('wp_enqueue_scripts', 'remove_unwanted_css', 9999);
Этот код удаляет стиль с идентификатором unwanted_style, добавленный плагином.
Пример 5: Добавление JavaScript через wp_enqueue_script
Для добавления JavaScript файла используйте функцию wp_enqueue_script.
function add_custom_js() {
wp_enqueue_script('custom_js', get_stylesheet_directory_uri() . '/js/custom-script.js', array(), null, true);
}
add_action('wp_enqueue_scripts', 'add_custom_js');
Этот код добавляет JavaScript-файл custom-script.js, находящийся в папке js вашей темы, и размещает его перед закрывающим тегом </body>.
Пример 6: Добавление мета-тегов
Вы можете использовать wp_head() для добавления мета-тегов. Например, добавим мета-тег description, значение которого берётся из пользовательского поля поста.
function add_meta_description() {
if (is_single()) {
global $post;
$description = get_post_meta($post->ID, 'seo_description', true);
echo '<meta name="description" content="' . esc_attr($description) . '">';
}
}
add_action('wp_head', 'add_meta_description');
Этот код добавляет мета-тег description на страницы отдельных постов, используя значение из пользовательского поля seo_description.
Заключение
Функция wp_head() является критически важной для корректной работы тем и плагинов в WordPress. Она позволяет гибко управлять содержимым в секции <head>, добавляя необходимые стили, скрипты и мета-теги. Используйте wp_head() для поддержания совместимости и улучшения функциональности вашего сайта.