header_image()
header_image() 函數是 WordPress 自定頂部圖像的標准接口函數,該函數可以自動判斷後台設置,並返回字符串形式的用戶自定義頂部圖像地址。本文主要涉及該函數的詳解及使用。
【Display header image path.】 即,顯示頂部圖像地址。
使用
復制代碼 代碼如下:
<img src="<?php header_image(); ?>" width="<?php echo $header_image_width; ?>" height="<?php echo $header_image_height; ?>" alt="" />
function header_textcolor() { echo get_header_textcolor(); } function get_header_image() { $url = get_theme_mod( 'header_image', get_theme_support( 'custom-header', 'default-image' ) ); if ( 'remove-header' == $url ) return false; if ( is_random_header_image() ) $url = get_random_header_image(); if ( is_ssl() ) $url = str_replace( 'http://', 'https://', $url ); else $url = str_replace( 'https://', 'http://', $url ); return esc_url_raw( $url ); }
get_custom_header 自定義頂部
get_custom_header 函數是 WordPress 3.4 送給我們的新禮物,該函數的出現是為了更好的集成和封裝頂部的使用,本文主要對 get_custom_header 這個函數進行詳解、以及如何在 WordPress 3.4 版本的主題中集成頂部功能。
請注意,根據本文折騰你的主題時,請確保你的 WordPress 已經升級到 3.4版本。
get_custom_header 意義詳解
自定義頂部目前大部分主題主要用到的還只是兩個功能 1.自定義頂部圖像 2.自定義頂部樣式
具體的效果你可以看一下 默認主題 twenty eleven ,或者我的另一個博客 悠悠我心
本函數是 WP 3.4 版本後才出現的一個內置函數,主要用於將用戶設置的頂部的各項參數以對象(object)的形式返回。
單單說這麼句屁話,也許你還不明白,想要明白的話,請往下看。
請注意本函數與get_header()有著本質的區別。
函數使用實例
下面的例子來自於 默認主題 twenty eleven 中 header.php 文件
PHP 代碼:
//判斷是否存在該函數,以便兼容老版本 if ( function_exists( 'get_custom_header' ) ) { //get_custom_header()->width 調用帶向 width 屬性 $header_image_width = get_custom_header()->width; //get_custom_header()->height 調用帶向 height 屬性 $header_image_height = get_custom_header()->height; } else {//兼容老版本的代碼 $header_image_width = HEADER_IMAGE_WIDTH; $header_image_height = HEADER_IMAGE_HEIGHT; }
綜合使用詳解
以下主要援引官方文檔解釋 自定義頂部
//打開主題自定義頂部支持 add_theme_support( 'custom-header' ); $headarg = array(//將設置打包成數組 'default-image' => '', 'random-default' => false, 'width' => 0, 'height' => 0, 'flex-height' => false, 'flex-width' => false, 'default-text-color' => '', 'header-text' => true, 'uploads' => true, 'wp-head-callback' => '', 'admin-head-callback' => '', 'admin-preview-callback' => '', ); //將數組中的設置添加到自定義頂部上 add_theme_support( 'custom-header', $headarg );
自定義頂部圖像
//打開主題自定義頂部支持 add_theme_support( 'custom-header' ); $headarg = array(//將設置打包成數組 'default-image' => '', 'random-default' => false, 'width' => 0, 'height' => 0, 'flex-height' => false, 'flex-width' => false, 'default-text-color' => '', 'header-text' => true, 'uploads' => true, 'wp-head-callback' => '', 'admin-head-callback' => '', 'admin-preview-callback' => '', ); //將數組中的設置添加到自定義頂部上 add_theme_support( 'custom-header', $headarg );
自適應頂部圖像設置
$args = array( 'flex-width' => true,//自適應高度 'width' => 980, 'flex-width' => true,//自適應寬度 'height' => 200, 'default-image' => get_template_directory_uri() . '/images/header.jpg', ); add_theme_support( 'custom-header', $args );
自定義頂部圖像的調用
<img src="<?php header_image(); ?>" height="<?php echo get_custom_header()->height; ?>" width="<?php echo get_custom_header()->width; ?>" alt="" />