wordpress参数常规设置里添加自定义字段

在我们做网站时,经常会有一些公共的系统参数字段,比如 手机号、备案号、QQ、传真等,如果把这些公共字段写在主题里,修改维护就不是很方便了,wordpress自身又没有这些字段表单,哪我们该如何自己动手在wordpress常规设置里添加自定义字段呢?
具体实现方法是在wordpress主题文件functions.php中添加如下代码

 <?php
function set_global_seo() {
	$global_seo = new GlobalSeo();
	$global_seo->setting_fields();
}
add_action( 'admin_init', 'set_global_seo' );
 
class GlobalSeo
{
	public function setting_fields()
	{
		$text_input = [
			'contact' => '联系人',
			'email' => '邮箱',
			'address' => '地址',
			'phone' => '电话',
			'wechat' => '微信',
			'qq' => 'QQ',
			'copyright' => '备案号',
			'seo_title' => 'seo标题',
			'seo_keywords' => 'seo关键字',
		];
		$textarea_input = [ 'seo_description' => 'seo描述' ];
		foreach($text_input as $key => $val)
		{
			$this->sonliss_settings_field($key, $val, 'sonliss_textbox_callback', [$key]);
			$this->sonliss_register_setting($key);
		}
		foreach($textarea_input as $key => $val)
		{
			$this->sonliss_settings_field($key, $val, 'sonliss_textareabox_callback', [$key]);
			$this->sonliss_register_setting($key);
		}
	}
	/**
	 * id ID
	 * title 显示在页面的标题即label
	 * callback 回调
	 * args [] 
	 */
	public function sonliss_settings_field($id, $title, $callback, $args)
	{
		add_settings_field(
			$id,
			$title,
			[ $this, $callback ],
			'general', // general, reading, writing, discussion, media
			'default', // 块,对应add_settings_section的id
			$args
		);
	}
 
	/**
	 * id ID
	 */
	public function sonliss_register_setting($id)
	{
		register_setting('general', $id);
	}
 
	/**
	 * input text
	 */
	public function sonliss_textbox_callback($args) {
		$option = get_option($args[0]);
		echo '<input type="text" id="'. $args[0] .'" name="'. $args[0] .'" value="' . $option . '" class="regular-text" />';
	}
 
	/**
	 * area
	 */
	public function sonliss_textareabox_callback($args) {
		$option = get_option($args[0]);
		echo '<textarea id="'. $args[0] .'" name="'. $args[0] .'" class="regular-text">'. $option .'</textarea>';
	}
}
 

注:如果需要添加继续添加新的字段  单行文本 在$text_input =[]  添加新的字段名 多行文本 在$textarea_input =[] 添加新的字段 

列:$textarea_input = [ 'seo_description' => 'seo描述','tongji' => '统计代码' ]; 

下面是在wordpress常规设置添加自定义字段后的效果图

wordpress常规设置添加自定义字段效果图

前台主题里调用标签  <?php echo get_option('seo_title'); ?>      seo_title为您的自定义字段名

方法二、添加公共参数模块

在function.php文件中引入add.php文件,即下方代码

include (TEMPLATEPATH . '/functions/add.php');

add.php文件下载地址:https://download.csdn.net/download/qq_39339179/58414890

效果图如下

 

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

永远的WEB小白

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值