详解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 相关文章推荐
javascript之函数直接量(function(){})()
Jun 29 Javascript
点击文章内容处弹出页面代码
Oct 01 Javascript
js获取元素到文档区域document的(横向、纵向)坐标的两种方法
May 17 Javascript
很全面的JavaScript常用功能汇总集合
Jan 22 Javascript
JS深度拷贝Object Array实例分析
Mar 31 Javascript
浅谈jquery.form.js的ajaxSubmit和ajaxForm的使用
Sep 09 Javascript
JS实现简单的tab切换选项卡效果
Sep 21 Javascript
Ionic+AngularJS实现登录和注册带验证功能
Feb 09 Javascript
JavaScript实现简单精致的图片左右无缝滚动效果
Mar 16 Javascript
微信小程序版翻牌小游戏
Jan 26 Javascript
微信小程序radio组件使用详解
Jan 31 Javascript
react用Redux中央仓库实现一个todolist
Sep 29 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
php ios推送(代码)
2013/07/01 PHP
php中删除、清空session的方式总结
2015/10/09 PHP
PHP7匿名类的用法示例
2019/04/05 PHP
tp5.1 框架数据库-数据集操作实例分析
2020/05/26 PHP
轻量级 JS ToolTip提示效果
2010/07/20 Javascript
jquery及原生js获取select下拉框选中的值示例
2013/10/25 Javascript
javascript 终止函数执行操作
2014/02/14 Javascript
jQuery实现漂亮实用的商品图片tips提示框效果(无图片箭头+阴影)
2016/04/16 Javascript
完美实现八种js焦点轮播图(上篇)
2016/07/18 Javascript
JS实现课堂随机点名和顺序点名
2017/03/09 Javascript
Node.js 的模块知识汇总
2017/08/16 Javascript
javascript 面向对象实战思想分享
2017/09/07 Javascript
微信小程序getPhoneNumber获取用户手机号
2017/09/29 Javascript
解决angular2在双向数据绑定时[(ngModel)]无法使用的问题
2018/09/13 Javascript
Vue 引入AMap高德地图的实现代码
2019/04/29 Javascript
vue移动端实现手机左右滑动入场动画
2020/06/17 Javascript
vant实现购物车功能
2020/06/29 Javascript
vue路由的配置和页面切换详解
2020/09/09 Javascript
简洁的十分钟Python入门教程
2015/04/03 Python
python 简单的多线程链接实现代码
2016/08/28 Python
matplotlib调整子图间距,调整整体空白的方法
2018/08/03 Python
python读取几个G的csv文件方法
2019/01/07 Python
python 模拟贷款卡号生成规则过程解析
2019/08/30 Python
python使用opencv resize图像不进行插值的操作
2020/07/05 Python
纯CSS3实现图片无间断轮播效果
2016/08/25 HTML / CSS
H5调用相机拍照并压缩图片的实例代码
2017/07/20 HTML / CSS
菲律宾领先的在线时尚商店:Zalora菲律宾
2018/02/08 全球购物
董事长助理工作职责范本
2014/07/01 职场文书
单位法定代表人授权委托书
2014/09/20 职场文书
教师个人年终总结
2015/02/11 职场文书
民事上诉状范文
2015/05/22 职场文书
会议简讯范文
2015/07/20 职场文书
大学副班长竞选稿
2015/11/21 职场文书
2016学校先进党组织事迹材料
2016/02/29 职场文书
幼儿园六一儿童节开幕词
2016/03/04 职场文书
JS前端使用canvas实现物体的点选示例
2022/08/05 Javascript