我试图理解 WordPress 中的一些功能,但是我无法理解 Application _ filter (...)到底是做什么的。
有人能给我举几个例子吗?
apply_filters($tag, $value)将“ value”参数传递给“ hook”(使用 add_filter)的每个函数到指定的过滤器“ tag”中。每个函数对该值执行一些处理,并返回一个修改后的值,以便传递给序列中的下一个函数。
apply_filters($tag, $value)
add_filter
例如,默认情况下(在 WordPress 2.9中) ,the_content过滤器通过以下函数序列传递值:
the_content
在最基本的术语中,Apply _ filter 用于初始化一个过滤器钩子... add _ filter 为已经创建的钩子分配一个新函数。
考虑到最流行的答案和额外的资源,以下是我收集到的信息:
<p>
迟到的回答
apply_filters() 与 global $wp_filters阵列交互。基本上,它只是检查当前过滤器(或钩子)是否附加了动作(/回调函数) ,然后调用它。
apply_filters()
global $wp_filters
将回调/操作附加到筛选器或钩子时,只需将回调名称添加到全局筛选器数组。然后,在代码(例如模板、核心或插件文件)中发生对 do_action()或 apply_filters()的调用时,WordPress 通过数组搜索并调用回调。使用过滤器比使用钩子更特殊的一点是,它返回值(用于进一步处理) ,而不仅仅是触发回调。总结一下: 钩子指向 插入数据,而过滤器指向 修改数据。
do_action()