详解WordPress开发中get_current_screen()函数的使用


Posted in Javascript onJanuary 11, 2016

get_current_screen() 函数是一个我们很少用到,但却超级实用的一个函数,如果你正着手于制作一个主题,却不知道文档应该放在哪里的话,那你应该看一下这个从 WordPress 3.0 才开始有的函数,该函数允许我们获得一个 WP_Screen 对象,并使用该对象的成员方法在后台里面加挂我们自定义的一个帮助菜单(该功能在,3.3版后得到完善)。

如果你不喜欢将 WordPress 研究的太透彻的话,那你现在就可以拿着酱油瓶,向前打酱油去了。

引言
首先,get_current_screen() 很简单,只是返回一个对象,所以本文主要讲述,获得对象后的操作。

描述

//使用起来很简单
$screen = get_current_screen();
// 此时 $screen 为实例化的对象

应用实例
我们来一个简单的例子,过程代码虽然可以显示但可能在时机应用中没有任何意义,只为举例。
虽然已经极具精简,但是还是很绕,噶的保佑您能看懂。

function xz_theme_options_add_page() {
 $theme_page = add_theme_page(
//如果成功,则返回hook标签,否则返回假到变量$theme_page。
  '主题设置',//页面Titlee
  '主题设置',// 在后台菜单中显示的名字
  'edit_theme_options',// 选项放置的位置
  'theme_options', // 别名,也就是get传送的参数
  'xz_theme_op_page' //显示内容调用的函数
 );
 if ( ! $theme_page )
 return;//建立失败则跳出函数
 add_action( "load-$theme_page", 'xz_help' );//在主题设置中挂帮助菜单
}
add_action( 'admin_menu', 'xz_theme_options_add_page' );
//在后台菜单加载时,加载xz_theme_options_add_page函数
 
function xz_theme_op_page (){//编辑页面显示函数
 echo "我是主题编辑页面";
}
 
function xz_help (){
 $help = '这里是帮助中间位置显示的内容
  <ol><li>A</li><li>B</li>
  <li>C</li><li>D</li></ol>';
 
 $sidebar = '这里是帮助右边栏显示的位置';
 
 $screen = get_current_screen();//第一主角,获得对象
 $screen->add_help_tab( array(//用成员方法注册帮助Tab
  'title' => '翔子主题帮助',//左边栏标签的名字
  'id' => 'theme-options-help',//不解释
  'content' => $help,//设定标签对应的内容
  )
 );
 $screen->set_help_sidebar( $sidebar );//方法只能使用一次,以最后一次调用为准。
}

效果
如果不出意外的话,经上面的折腾,你得主题就有了初步的帮助界面了。
点击下图的位置

详解WordPress开发中get_current_screen()函数的使用

自定义帮助按钮位置

点击后如下图

详解WordPress开发中get_current_screen()函数的使用

自定义帮助

总结
set_help_sidebar( )//方法只能使用一次,以最后一次调用为准。这里你可以添加一些你得api地址之类的或广告之类的东西。
add_help_tab() 方法可以多次使用,每使用一次标签会多一个,当然你还要设置对应的$help值。

Javascript 相关文章推荐
jquery插件如何使用 jQuery操作Cookie插件使用介绍
Dec 15 Javascript
可以用鼠标拖动的DIV实现思路及代码
Oct 21 Javascript
javascript中with()方法的语法格式及使用
Aug 04 Javascript
JQuery实现防止退格键返回的方法
Feb 12 Javascript
基于jquery实现省市区三级联动效果
Dec 25 Javascript
Node.js中Request模块处理HTTP协议请求的基本使用教程
Mar 31 Javascript
Webpack+Vue如何导入Jquery和Jquery的第三方插件
Feb 20 Javascript
svg动画之动态描边效果
Feb 22 Javascript
weebox弹出窗口不居中显示的解决方法
Nov 27 Javascript
Vue+Mock.js模拟登录和表格的增删改查功能
Jul 26 Javascript
基于JQuery实现页面定时弹出广告
May 08 jQuery
vue项目里面引用svg文件并给svg里面的元素赋值
Aug 17 Javascript
提升jQuery的性能需要做好七件事
Jan 11 #Javascript
jQuery 移动端artEditor富文本编辑器
Jan 11 #Javascript
AngularJs动态加载模块和依赖注入详解
Jan 11 #Javascript
jquery在ie7下选择器的问题导致append失效的解决方法
Jan 10 #Javascript
基于Node.js的强大爬虫 能直接发布抓取的文章哦
Jan 10 #Javascript
JavaScript基础知识及常用方法总结
Jan 10 #Javascript
jQuery实现的调整表格行tr上下顺序
Jan 10 #Javascript
You might like
介绍几个array库的新函数 php
2006/12/29 PHP
php中通过虚代理实现延迟加载的实现代码
2011/06/10 PHP
destoon调用自定义模板及样式的公告栏
2014/06/21 PHP
php中rename函数用法分析
2014/11/15 PHP
php中Snoopy类用法实例
2015/06/19 PHP
PHP使用array_merge重新排列数组下标的方法
2015/07/22 PHP
php上传功能集后缀名判断和随机命名(强力推荐)
2015/09/10 PHP
php开发时容易忘记的一些技术细节
2016/02/03 PHP
php bootstrap实现简单登录
2016/03/08 PHP
采用CSS和JS,刚好我最近有个站点要用到下拉菜单!
2006/06/26 Javascript
JavaScript中使用构造函数实现继承的代码
2010/08/12 Javascript
jQuery html()方法使用不了无法显示内容的问题
2014/08/06 Javascript
angularjs学习笔记之三大模块(modal,controller,view)
2015/09/26 Javascript
javascript的函数劫持浅析
2016/09/26 Javascript
JavaScript仿聊天室聊天记录
2016/12/27 Javascript
一个简易的js图片轮播效果
2017/07/22 Javascript
BootStrap导航栏问题记录
2017/07/31 Javascript
打造通用的匀速运动框架(实例讲解)
2017/10/17 Javascript
深入理解Vue 单向数据流的原理
2017/11/09 Javascript
javascript高仿热血传奇游戏实现代码
2018/02/22 Javascript
python 删除字符串中连续多个空格并保留一个的方法
2018/12/22 Python
关于python多重赋值的小问题
2019/04/17 Python
Django如何批量创建Model
2020/09/01 Python
Coltorti Boutique官网:来自意大利的设计师品牌买手店
2018/11/09 全球购物
英国川宁茶官方网站:Twinings茶
2019/05/21 全球购物
使用useBean标志初始化BEAN时如何接受初始化参数
2012/02/11 面试题
请写出 BOOL flag 与"零值"比较的 if 语句
2016/02/29 面试题
linux面试题参考答案(9)
2015/01/07 面试题
校庆筹备方案
2014/03/30 职场文书
霸气队列口号
2014/06/18 职场文书
坚守艰苦奋斗精神坚决反对享乐主义整改措施
2014/09/17 职场文书
学校隐患排查制度
2015/08/05 职场文书
2016暑期政治学习心得体会
2016/01/23 职场文书
Django 如何实现文件上传下载
2021/04/08 Python
Python集合set()使用的方法详解
2022/03/18 Python
tomcat正常启动但网页却无法访问的几种解决方法
2022/05/06 Servers