建站经验 experience
当前位置:首页 > 网站建设专题 > 建站经验
WP3.4版本Custom Backgrounds和Custom Headers的新方法
发布日期:2012-04-10 阅读次数:975 字体大小:
天收到WordPress官方邮件通知,WordPress 3.4会用新的方法实现Custom Backgrounds(自定义背景)和Custom Headers(自定义头部-一般是图片),老方法可以继续使用但不提倡。

Custom Backgrounds

原来的方法:

add_custom_background();

新的方法:

add_theme_support('custom-background');

新方法加了数组参数,定义更容易:add_theme_support('custom-background', $args ),$args 默认参数如下:

$defaults = array(
'default-image' => '', //默认背景图片
'default-color' => '', //默认背景颜色
'wp-head-callback' => '_custom_background_cb', //回调函数
'admin-head-callback' => '',
'admin-preview-callback' => ''
)

现在定义默认背景图片和颜色变得非常简单:

add_theme_support( 'custom-background', array(
// Background color default
'default-color' => '000',
// Background image default
'default-image' => get_template_directory_uri() . '/images/background.jpg'
) );

Custom Headers

老方法:

// Define default header image constant
define( 'HEADER_IMAGE', get_template_directory_uri() . '/images/headers/default.jpg' );
// Define header image width constant
define( 'HEADER_IMAGE_WIDTH', 1000 );
// Define header image height constant
define( 'HEADER_IMAGE_HEIGHT', 198 );
// Define header text constant
define( 'NO_HEADER_TEXT', false );
// Define header text color constant
define( 'HEADER_TEXTCOLOR', '000' );
// Turn on random header image rotation by default.
// Requires HEADER_IMAGE to be null
add_theme_support( 'custom-header', array( 'random-default' => true ) );
// Add Theme support
add_custom_image_header( $wphead_cb, $adminhead_cb, $adminpreview_cb );

新方法:

add_theme_support( 'custom-header', array(
// Header image default
'default-image' => get_template_directory_uri() . '/images/headers/default.jpg',
// Header text display default
'header-text' => false,
// Header text color default
'default-text-color' => '000',
// Header image width (in pixels)
'width' => 1000,
// Header image height (in pixels)
'height' => 198,
// Header image random rotation default
'random-default' => false,
// Template header style callback
'wp-head-callback' => $wphead_cb,
// Admin header style callback
'admin-head-callback' => $adminhead_cb,
// Admin preview style callback
'admin-preview-callback' => $adminpreview_cb
) );

现在参数定义更简单,对比一下新旧参数:

HEADER_IMAGE => 'default-image'
HEADER_IMAGE_WIDTH => 'width'
HEADER_IMAGE_HEIGHT => 'height'
NO_HEADER_TEXT => 'header-text'
HEADER_TEXTCOLOR => 'default-text-color'

下面是完整的参数参考:

$defaults = 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' => '',
);

看来下次升级主题时就要更新这个了。

英文好的朋友还是去看原文:<传送门>