WordPress的钩子机制小结-利剑分享-科技生活
利剑分享-科技生活-利剑分享-科技生活
利剑分享-科技生活

WordPress的钩子机制小结

WordPress的钩子机制小结

WordPress是用PHP-FPM方式运行的一个CMS程序。

这就决定了WordPress内含的PHP脚本正常情况下只能在该页脚本运行时加载。而钩子则允许你在别的地方修改。

比如当你想修改当前页面的中的标题,你可以不用直接打开修改主题的header.php修改。而可以直接写个插件。。。

这对开发者来说非常友好。因为……比如,你修改了一部分 WordPress 或WordPress主题的核心文件,但一旦更新 WordPress 的版本,那么你的修改就不见了,你还得重新再改一次。但一旦使用钩子制,那么你就不用修改核心文件、再其他地方(比如主题、插件)就能更改功能,且你的修改不受 WordPress或WordPress主题 更新的困扰。

钩子类型

1: 动作(action)钩子

无返回数据,关注的只是要干什么。

2: 过滤(filter)钩子

特点是,一定要将修改后的数据返回(return),后续的代码会用到。

钩子顺序

钩子机制,最大的特点就是,将执行和挂载的过程分离。一旦分离,就得区分出先后顺序。就像去吃自助餐,你能吃到食物的前提,是餐厅要先将食物摆在指定位置。执行的过程,就像是吃食物的过程;挂载的过程,就像是准备和摆食物的过程

顺序总结:

  1. 先挂载函数到钩子
  2. 后执行钩子上函数

3、重要函数

3.1、执行钩子上函数

  1. a) apply_filters( $tag, $value[, $value2…] ) // 执行过滤钩子下的函数
  2. b) do_action($tag, $arg = ”)

// 执行动作钩子下的函数

挂载函数到钩子

  1.  add_filter( $tag, $function_to_add, $priority = 10, $accepted_args = 1 )
  2.  add_action($tag, $function_to_add, $priority = 10, $accepted_args = 1)

add_filter(),是将函数挂载到某个过滤类型的钩子上;

add_action(),是将函数挂载到某个动作类型的钩子上。

© 版权声明
THE END
喜欢就支持一下吧
点赞12 分享