5ucms论坛

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 9485|回复: 1
打印 上一主题 下一主题

[钩子/函数] add_filters() apply_filters() 过滤器使用

[复制链接]

670

主题

785

帖子

8228

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
8228
跳转到指定楼层
楼主
发表于 2021-6-3 19:58:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
add_filter("过滤器名称","方法函数",优先级数字,前边方法函数中需传递的变量数);
若 无所谓优先级,只需传递一个变量参数,后2个可不写

  1. $value = "test";
  2. function qss_filter_test($value){
  3.   return $value.'(我是处理过的)';
  4. }
  5. function qss_filter_time($value){
  6.   return date("Y-m-d H:i:s").$value;
  7. }

  8. add_filter("qss_filter","qss_filter_test"); //添加一个过滤器,名字为qss_filter,方法为qss_filter_test 需写在应用过滤器之前,一个过滤器可以装载多个方法
  9. add_filter("qss_filter","qss_filter_time");//再装载一个方法

  10. $myvar = apply_filters("qss_filter",$value); // 插入$value值,应用这个过滤器里的所有方法,如果什么都不装载,就只输出$value的值

  11. echo $myvar;
复制代码





回复

使用道具 举报

670

主题

785

帖子

8228

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
8228
沙发
 楼主| 发表于 2021-6-3 20:11:14 | 只看该作者
比如
the_content 就是文章内容的过滤器
可以写
add_filter("the_content","qss_filter_test");
add_filter("the_content","qss_filter_time");
但不需要再apply,因为后台已写过了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|5ucms.com

GMT+8, 2024-4-24 14:39 , Processed in 0.187500 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表