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.9
function get_background_image() {
return get_theme_mod( 'background_image', get_theme_support( 'custom-background', 'default-image' ) );
} 