WordPress通过functions函数给网站前端和后台添加自定义字段
WordPress的后台常规页面是填写站点和站点URL的位置,我们在自己做网站时,也可以通用functions.php按照自己的需要添加自定义的字段。
例如我们想在常规页面添加授权码填写框,就可以使用以下的代码,放在functions.php代码中。
$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', 'shouquanma', 'esc_attr' );
add_settings_field('fav_color', '<label for="shouquanma">'.__('正版授权码' ).'</label>' , array(&$this, 'fields_html') , 'general' );
}
function fields_html() {
$value = get_option( 'shouquanma', '' );
echo '<input type="text" id="shouquanma" name="shouquanma" value="' . $value . '" size="65"/><br><span style="font-size:12px;color:#888">您正在使用<span style="color:#f00">Wordpress正版模板</span>,为保护您的权益和防止模板滥用,请填写<span style="color:#f00">授权码</span>!</span>';
}
}
还可以在wordpress网站后台常规页面段添加多个自定义字
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 = [
'widget_ctextk' => '电话',
'shouquanma' => '邮箱',
];
foreach($text_input as $key => $val)
{
$this->sonliss_settings_field($key, $val, 'sonliss_textbox_callback', [$key]);
$this->sonliss_register_setting($key);
}
}
public function sonliss_settings_field($id, $title, $callback, $args)
{
add_settings_field(
$id,
$title,
[ $this, $callback ],
'general',
'default',
$args
);
}
public function sonliss_register_setting($id)
{
register_setting('general', $id);
}
public function sonliss_textbox_callback($args) {
$option = get_option($args[0]);
echo '<input type="hidden" data-id="'. $option.'" id="'. $args[0].'" name="'. $args[0] .'" value="" />';
}
}
如果想调用自定义的字段,使用以下的代码来调用:
<?php echo get_option('shouquanma'); ?>
除此之外,我们还可以使用通过functions.php给网站后台添加JS或者CSS3代码;
function myfunction_custom_admin_footer2() {
echo '<script src="'.get_template_directory_uri(). '/admin/js/ashuwp_head.js?v=2"></script>';
}
add_filter('admin_footer_text', 'myfunction_custom_admin_footer2');
也可以使用functions.php给网站前端添加代码;
function panda_copyright() {
echo '网站前端添加代码';
}
add_action('wp_footer', 'panda_copyright');
在底部模板添加<?php wp_footer();?>来获取js文件。