WordPress 钩子、动作和过滤器

WordPress中的钩子、动作和过滤器是扩展和定制主题和插件的重要工具。它们允许开发人员在特定的时间点插入自定义代码,或者修改WordPress中的数据。

  1. 钩子(Hooks):
    1. 钩子分为两种类型:动作钩子(Actions)和过滤器钩子(Filters)。
    2. 动作钩子允许您在特定事件发生时执行自定义代码,比如在文章发布后执行某些操作。
    3. 过滤器钩子允许您修改特定数据,比如在显示文章内容之前修改文章内容。
    4. 钩子允许您将自定义功能与WordPress核心或其他插件的功能进行连接。
  2. 动作(Actions):
    1. 动作是一种类型的钩子,它允许您在特定事件发生时执行自定义代码。
    2. 您可以使用add_action函数将动作附加到特定的事件上,以便在事件发生时执行您的自定义功能。
    3. 举个例子:
  // 添加动作钩子,当文章发布后发送电子邮件
add_action( 'publish_post', 'send_email_notification' );
// 自定义发送电子邮件功能
function send_email_notification( $post_id ) {
    $to = 'recipient@example.com';
    $subject = '新文章已发布';
    $message = '请查看网站上的新文章。';
    wp_mail( $to, $subject, $message );
}
  1. 过滤器(Filters):
    1. 过滤器是一种类型的钩子,它允许您修改特定数据。
    2. 您可以使用add_filter函数将过滤器附加到特定的数据上,以便在数据被使用之前修改它。
    3. 举个例子:
  // 添加动作钩子,当文章发布后发送电子邮件
add_action( 'publish_post', 'send_email_notification' );
// 自定义发送电子邮件功能
function send_email_notification( $post_id ) {
    $to = 'recipient@example.com';
    $subject = '新文章已发布';
    $message = '请查看网站上的新文章。';
    wp_mail( $to, $subject, $message );
}

参考:

插件技术是基于 filter和action 技术 = (HOOK),多看看 ,这是扩展的作用,如果不是为了扩展功能,也可以直接在页面写代码方便。函数式编程:Action = 事件驱动 event, filter = 过滤器middleware切面编程

https://www.wpdaxue.com/series/50-actions-of-wordpress

https://www.wpdaxue.com/series/50-filters-of-wordpress

https://www.businessbloomer.com/category/woocommerce-tips/visual-hook-series/ 可视化woo

Powered by BetterDocs