Z-Blog 钩子怎么选:Add_Filter 和 Add_Action 到底差在哪
摘要
写插件第一步就卡在这个选择上。一句话区别:Filter 改数据,Action 做事。 Filter:有返回值,能改内容 典型如 Filter_Plugin_Index_Begin、文章内容过滤钩子。你拿到一个值,改完返回,后续流程用你的返回
写插件第一步就卡在这个选择上。一句话区别:Filter 改数据,Action 做事。
Filter:有返回值,能改内容
典型如 Filter_Plugin_Index_Begin、文章内容过滤钩子。你拿到一个值,改完返回,后续流程用你的返回值继续走。返回 null 通常等于「不干预」。
Action:没有返回值,只执行副作用
典型如保存成功后的通知、发邮件、写日志。你不能通过它改数据流。
判断口诀
- 「我要把标题改一下」→ Filter
- 「我要在保存后干点事」→ Action
- 「我要两边都干」→ 挂两个钩子,不要在一个里硬塞
确认钩子名别靠猜
模型和教程里都经常把钩子名写错一个字母,挂上去毫无反应又不报错。写之前先 list_hooks 或直接查 zb_system/function/c_system_plugin.php,比试错快得多。
2026年10月21日 12:42
前后30天 · 点日期看归档
9月21日
9月22日
9月23日
9月24日
9月25日
9月26日
9月27日
9月28日
9月29日
9月30日
10月1日
10月2日
10月3日
10月4日
10月5日
10月6日
10月7日
10月8日
10月9日
10月10日
10月11日
10月12日
10月13日
10月14日
10月15日
10月16日
10月17日
10月18日
10月19日
10月20日
10月21日
10月22日
10月23日
10月24日
10月25日
10月26日
10月27日
10月28日
10月29日
10月30日
10月31日
11月1日
11月2日
11月3日
11月4日
11月5日
11月6日
11月7日
11月8日
11月9日
11月10日
11月11日
11月12日
11月13日
11月14日
11月15日
11月16日
11月17日
11月18日
11月19日
11月20日