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="" />