详解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如何从listbox里同时删除多个项目
Oct 12 Javascript
通过JS来动态的修改url,实现对url的增删查改
Sep 01 Javascript
js jquery获取当前元素的兄弟级 上一个 下一个元素
Sep 01 Javascript
浅谈Javascript数据属性与访问器属性
Jul 26 Javascript
js监听键盘事件的方法_原生和jquery的区别详解
Oct 10 Javascript
jQuery中Nicescroll滚动条插件的用法
Nov 10 Javascript
浅谈js中用$(#ID)来作为选择器的问题(id重复的时候)
Feb 14 Javascript
一篇看懂vuejs的状态管理神器 vuex状态管理模式
Apr 20 Javascript
jQuery实现全选、反选和不选功能
Aug 16 jQuery
深入了解Hybrid App技术的相关知识
Jul 17 Javascript
小程序点击图片实现png转jpg
Oct 22 Javascript
JS实现简单九宫格抽奖
Jun 28 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
实现了一个PHP5的getter/setter基类的代码
2007/02/25 PHP
php str_getcsv把字符串解析为数组的实现方法
2017/04/05 PHP
php实现映射操作实例详解
2019/10/02 PHP
jquery 选择器部分整理
2009/10/28 Javascript
javascript中使用replaceAll()函数实现字符替换的方法
2010/12/25 Javascript
基于jQuery的可用于选项卡及幻灯的切换插件
2011/03/28 Javascript
contains和compareDocumentPosition 方法来确定是否HTML节点间的关系
2011/09/13 Javascript
通过上下左右键和回车键切换光标实现代码
2013/03/08 Javascript
JavaScript的作用域和块级作用域概念理解
2014/09/21 Javascript
jquery判断复选框选中状态以及区分attr和prop
2015/12/18 Javascript
Bootstrap框架安装使用详解
2017/01/21 Javascript
JS中setTimeout和setInterval的最大延时值详解
2017/02/13 Javascript
js 将input框中的输入自动转化成半角大写(税号输入框)
2017/02/16 Javascript
javascript定时器取消定时器及优化方法
2017/07/08 Javascript
微信小程序 POST请求的实例详解
2017/09/29 Javascript
Vue+webpack项目基础配置教程
2018/02/12 Javascript
vue实现文字横向无缝走马灯组件效果的实例代码
2019/04/09 Javascript
一次让你了解全部JavaScript的作用域
2019/06/24 Javascript
webpack HappyPack实战详解
2019/10/08 Javascript
vuejs中父子组件之间通信方法实例详解
2020/01/17 Javascript
Openlayers测量距离与面积的实现方法
2020/09/25 Javascript
Python文件去除注释的方法
2015/05/25 Python
Python通过future处理并发问题
2017/10/17 Python
pyqt5的QComboBox 使用模板的具体方法
2018/09/06 Python
处理Selenium3+python3定位鼠标悬停才显示的元素
2019/07/31 Python
Pandas操作CSV文件的读写实现方法
2019/11/13 Python
python实现ip地址的包含关系判断
2020/02/07 Python
pycharm开发一个简单界面和通用mvc模板(操作方法图解)
2020/05/27 Python
HTML实现代码雨源码及效果示例
2020/02/25 HTML / CSS
双十佳事迹材料
2014/01/29 职场文书
中专毕业生自我鉴定
2014/02/02 职场文书
幼儿园毕业教师感言
2014/02/21 职场文书
就业意向书范文
2014/04/01 职场文书
丧事主持词大全
2014/04/02 职场文书
应届生求职信
2014/05/31 职场文书
MySQL 原理优化之Group By的优化技巧
2022/08/14 MySQL