今天总结一下最近在 WPJAM Basic 中定义的几个函数,如果你有相似的需求,那么在安装 WPJAM Basic 之后就可以直接使用:
function_alias
在 PHP 中自定义 function_alias 函数为函数创建别名。
比如下面的代码就是给 wp_is_mobile
创建别名 wpjam_is_mobile
:
function_alias('wp_is_mobile', 'wpjam_is_mobile');
wpjam_wrap
在 WordPress 中实现 PHP 版本的 wrap 函数
jQuery 有个 wrap
函数,可以使用指定的 HTML 元素来包裹每个被选元素,这个是 PHP 版本。
wpjam_try
用最古老的 WordPress 系统,写最现代的 PHP 代码!
WordPress 错误处理是使用 WP_Error
处理,经常会写成满屏幕的 WP_Error
处理,wpjam_try
是个高阶函数,意思是它的参数是其他函数,它自动将该函数中的 WP_Error
对象转换成异常,这样就能统一处理错误。
wpjam_load
如何解决 WordPress 插件加载顺序和相互之间依赖问题
如果你和我一样如果写了30多个插件,肯定会和我一样存在插件的加载顺序和插件之间的依赖问题,wpjam_load
函数就是用来来处理插件依赖问题。
add_action('plugins_loaded', function(){
if(did_action('wpjam_loaded')){
wpjam_load('wpjam_comment_loaded', function(){
// 加载表单插件的代码
});
}
}
wpjam_ob_get_contents
WordPress 中一行代码即可控制函数的输出并存到变量中
这是一个高阶函数,只要传递函数名和参数,程序就会自动获取输出的值,不用再写 PHP 的输出缓存控制流程,比如:
代码语言:javascript复制wpjam_ob_get_contents('echo_something', $arg1, $args2...);
wpjam_get_current_priority
如何在回调函数中获取 WordPress 接口的当前优先级
用于如何获取 Hook 优先级,一般情况下这个函数用不到,但是一些很特殊的情况下需要用到,如果用到了,就对你有很大的帮助。
wpjam_call_method
没想到吧,PHP 中在类的外部也可以调用私有方法!
通过获取 class 私有方法的反射,然后获取其闭包,最后使用回调的方式来调用。