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常规设置添加自定义字段后的效果图

前台主题里调用标签 <?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

效果图如下

版权声明:本文为CSDN博主「zzsi」的原创文章
原文链接:https://blog.csdn.net/qq_39339179/article/details/118365137

THE END