借一步网
作者:
在
WordPress 中的 Filter 和 Action 是两种不同的钩子(Hook)机制,它们的主要区别如下:
the_content
wp_title
示例:
// 定义过滤器 add_filter('the_content', 'my_content_filter'); function my_content_filter(content = str_replace('旧文本', '新文本', content; }
wp_head
wp_footer
// 定义动作 add_action('wp_footer', 'my_footer_action'); function my_footer_action() { // 执行操作,不需要返回值 echo '<div>页脚内容</div>'; }
Filter 的典型应用:
// 修改文章标题 add_filter('the_title', 'modify_title'); function modify_title(title; } // 修改文章内容 add_filter('the_content', 'add_ads_to_content'); function add_ads_to_content(ads = '<div class="ads">广告内容</div>'; return ads; }
Action 的典型应用:
// 在头部添加自定义脚本 add_action('wp_head', 'add_custom_script'); function add_custom_script() { echo '<script>console.log("自定义脚本");</script>'; } // 在文章发布时执行操作 add_action('publish_post', 'notify_admin'); function notify_admin(content, content; } // Action 示例 add_action('wp_footer', 'action_function', 20, 3); function action_function(arg2, $arg3) { // 执行操作 }
// 移除 Filter remove_filter('the_content', 'filter_function'); // 移除 Action remove_action('wp_footer', 'action_function');
总的来说,Filter 和 Action 是 WordPress 插件和主题开发中非常重要的机制,它们允许开发者在不修改核心代码的情况下扩展和修改 WordPress 的功能。选择使用哪种钩子取决于你想要实现的功能:如果需要修改数据,使用 Filter;如果需要执行操作,使用 Action。
要发表评论,您必须先登录。
WordPress 中的 Filter 和 Action 是两种不同的钩子(Hook)机制,它们的主要区别如下:
the_content
、wp_title
等示例:
wp_head
、wp_footer
等示例:
the_content
)wp_head
)Filter 的典型应用:
Action 的典型应用:
两者都可以被移除:
总的来说,Filter 和 Action 是 WordPress 插件和主题开发中非常重要的机制,它们允许开发者在不修改核心代码的情况下扩展和修改 WordPress 的功能。选择使用哪种钩子取决于你想要实现的功能:如果需要修改数据,使用 Filter;如果需要执行操作,使用 Action。