get_background_image()
Получает URL фонового изображения установленного в настройках темы (в кастомайзере).
Для того, чтобы можно было установить фоновое изображение, нужно включить поддержку такого изображения для темы. Делается это функцией add_theme_support('custom-background'). После включения возможности в кастомайзере можно будет установить фоновое изображение:
Используйте background_image(), когда нужно сразу вывести URL на экран.
Смотрите также аналогичную функцию для получения цвета get_background_color() и background_color().
Разные опции темы связанные с фоном темы:
$position_x = get_theme_mod( 'background_position_x', get_theme_support( 'custom-background', 'default-position-x' ) ); $position_y = get_theme_mod( 'background_position_y', get_theme_support( 'custom-background', 'default-position-y' ) ); $size = get_theme_mod( 'background_size', get_theme_support( 'custom-background', 'default-size' ) ); $repeat = get_theme_mod( 'background_repeat', get_theme_support( 'custom-background', 'default-repeat' ) ); $attachment = get_theme_mod( 'background_attachment', get_theme_support( 'custom-background', 'default-attachment' ) );
Хуков нет.
Возвращает
Строку
. URL фонового изображения
Использование
get_background_image();
Примеры
#1 Выведем URL в css стилях
<style> body.custom-background { background-image: url('<?php background_image(); ?>'); } </style>
#2 Демонстрация работы функции
$background_image = get_background_image(); echo $background_image; // http://example.com/wp-content/uploads/2015/04/Big_image_Pumkins.jpg
#3 Фоновое изображение темы в качестве запасного варианта, когда миниатюра записи не установлена
Этот пример показывает как использовать миниатюру записи в качестве фона для страницы, и если картинка для записи не установлен по умолчанию брать картинку из настроек темы.
<head> <meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php bloginfo('charset'); ?>" /> <?php if ( is_singular() ) wp_enqueue_script( 'comment-reply' ); ?> <?php wp_head() ?> <?php // declare $post global if used outside of the loop global $post; // check to see if the theme supports Featured Images, and one is set if ( current_theme_supports( 'post-thumbnails' ) && has_post_thumbnail( $post->ID ) ) { // specify desired image size in place of 'full' $page_bg_image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'full' ); $page_bg_image_url = $page_bg_image[0]; // this returns just the URL of the image } else { // the fallback – our current active theme's default bg image $page_bg_image_url = get_background_image(); } // And below, spit out the <style> tag... ?> <style type="text/css" id="custom-background-css-override"> body.custom-background { background-image: url('<?php echo $page_bg_image_url; ?>'); } </style> </head>
Список изменений
С версии 3.0.0 | Введена. |
Код get_background_image() get background image WP 6.7.1
function get_background_image() { return get_theme_mod( 'background_image', get_theme_support( 'custom-background', 'default-image' ) ); }