为了账号安全,请及时绑定邮箱和手机立即绑定

麻烦大侠解释下add_filter的意思?

麻烦大侠解释下add_filter的意思?

Helenr 2022-06-17 15:11:56
里面add_filter('posts_where', 'filter_where');query_posts($query_string);<?php//based on Austin Matzko's code from wp-hackers email listfunction filter_where($where = '') {//posts in the last 30 days$where .= " AND post_date > '" . date('Y-m-d', strtotime('-30 days')) . "'";return $where;}add_filter('posts_where', 'filter_where');query_posts($query_string);?>
查看完整描述

2 回答

?
料青山看我应如是

TA贡献1772条经验 获得超8个赞

add_filter 这个函数是wordpress本身自带的常用函数。

他的使用方法是


<?php add_filter($tag,  $function_to_add,  $priority = 10,  $accepted_args = 1); ?>

其中$tag和$function_to_add是必选。

官方解释的含义是:

返回的值
$function_to_add成功添加到$tag过滤器时返回true。返回函数可接受的参数数量。在WordPress
1.5.1及之后版本中,连接的函数可吸收其它在调用do_action() 或
apply_filters()时设置的参数。例如,comment_id_not_found动作将传递任何函数,若该函数将所请求的评论编号连接到该
动作。

按照你当前的程序代码解释来说就是

add_filter('posts_where', 'filter_where');  
这段代码的意思就是把自定义函数filter_where添加到posts_where当中

posts_where也是wordpress自带的功能,


查看完整回答
反对 回复 2022-06-20
?
侃侃尔雅

TA贡献1801条经验 获得超16个赞

add_filter为wordpress内置的插件机制
原理是:
1、先通过apply_filters或apply_filters_ref_array函数来声明一个hooks。
2、再通过add_filter向已声明的hooks添加自定义函数。

add_filter('posts_where', 'filter_where');

这句表示向wp内置的posts_where添加filter_where自定义函数。

posts_where于wp-includes\query.php: 第2797行左右被声明。

查看完整回答
反对 回复 2022-06-20
  • 2 回答
  • 0 关注
  • 220 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信