程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> WordPress主題制作中自定義頭部的相關PHP函數解析

WordPress主題制作中自定義頭部的相關PHP函數解析

編輯:PHP綜合

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

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved