WordPress 添加自定义项字段到常规设置页面

        在用WordPress开发网站时,可能我们需要添加一些额外的设置选项到常规设置(后台 > 设置 > 常规)页面来满足我们的开发需求。这里有两个关键点。

实例1:

  • 1、把自定义字段添加到WordPress系统常规设置页面这个位置。
  • 2、字段的添加和主题页面的调用。

下面是一个简单的范例:

WordPress 添加自定义项字段到常规设置页面
WordPress 添加自定义项字段到常规设置页面

首先:直接添加到主题的 functions.php 即可:

/**
 * WordPress 添加自定义项字段到常规设置页面
 */
$new_general_setting = new new_general_setting();
class new_general_setting {
	function new_general_setting( ) {
		add_filter( 'admin_init' , array( &$this , 'register_fields' ) );
	}
	function register_fields() {
		register_setting( 'general', 'favorite_color', 'esc_attr' );
		add_settings_field('fav_color', '<label for="favorite_color">'.__('颜色演示' ).'</label>' , array(&$this, 'fields_html') , 'general' );
	}
	function fields_html() {
		$value = get_option( 'favorite_color', '' );
		echo '<input type="text" id="favorite_color" name="favorite_color" value="' . $value . '" />';
	}
}

解析:根据自己的需要修改 11、12、15、16 行的代码即可,这里只是简单的 input 表单,你也可以直接添加其他表单类型。

其次:页面调用

使用 get_option()函数即可调用选项字段的值,

比如上面的例子用 get_option( ‘favorite_color’ );

实例2:

许多WordPress主题都需要给用户提供一些设置选项,最常见的就是设置首页描述标签、页脚统计代码,如果仅仅只需要这么几个简单的设置项就专门制作一个主题后台,那有点大动干戈了,我们可以给WordPress默认的常规设置添加配置项。

先来看添加后的效果图:

从左侧的菜单可以看出目前位于WordPress默认的常规设置页面,添加的网站描述和统计代码配置项位于备案号和站点语言选项中间。

添加配置项代码如下:

 

//添加常规选项
function bzg_register_fields() {
	register_setting( 'general', 'bzg_description' );
	register_setting( 'general', 'bzg_code' );
	add_settings_field( 'bzg_description', '<label for="bzg_description">网站描述</label>', 'bzg_fields_des', 'general' );
	add_settings_field( 'bzg_code', '<label for="bzg_code">统计代码</label>', 'bzg_fields_code', 'general' );
}
function bzg_fields_des() {
	$value = get_option( 'bzg_description', '' );
	echo '<textarea name="bzg_description" id="bzg_description" class="large-text code" rows="3">' . $value . '</textarea>';
	echo '<p class="description">显示在首页description描述标签中</p>';
}
function bzg_fields_code() {
	$value = get_option( 'bzg_code', '' );
	echo '<textarea name="bzg_code" id="bzg_code" class="large-text code" rows="3">' . $value . '</textarea>';
	echo '<p class="description">网站统计代码、客服代码等可以放在这里,将在页脚输出</p>';
}
add_filter( 'admin_init' , 'bzg_register_fields' );

将以上代码粘贴到主题文件functions.php中即可。

你也可以修改以上代码来添加更多配置项,但是如果配置项比较多的话还是单独做一个主题后台吧!

调用方法:

使用get_option()函数即可获取配置项,例如:

<?php echo get_option('bzg_code'); ?>

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值