WordPress的add_action函数用法(附:用于add_action的钩子如何自定义)

文 / @WordPress主题

在 WordPress 中,add_action() 函数用于将功能(或回调函数)添加到特定的 WordPress 事件(或挂钩)上。

例如,要在每次文章保存时执行某项操作,可以使用 save_post 挂钩和一个回调函数。以下是一个示例:

// 添加“save_post”挂钩和回调函数
add_action('save_post', 'my_save_post_function');

function my_save_post_function( $post_id ) {
   // 执行保存后的操作
}

在上面的代码中,add_action() 函数将 my_save_post_function() 回调函数添加到 save_post 挂钩上。当任何文章被保存时,WordPress 将自动执行此功能,并将挂钩的参数传递给回调函数。

具体步骤:

  1. 选择要附加到的 WordPress 事件(或挂钩)。
  2. 创建一个功能(或回调函数),该函数将作为处理程序在事件发生时执行。
  3. 使用 add_action() 将此功能添加到挂钩上。

除了回调函数之外,您还可以指定额外的参数,例如优先级,以确保它在同一挂钩上附加的其他功能之前或之后运行。例如:

// 添加“save_post”挂钩和回调函数
add_action('save_post', 'my_save_post_function', 10, 2);

function my_save_post_function( $post_id, $post ) {
   // 执行保存后的操作
}

这将向您的回调函数添加 10 作为优先级,并将两个参数 $post_id 和 $post 传递给回调函数。

用于add_action的钩子如何自定义

在 WordPress 中,如果您想要自定义一个新的钩子(或事件),可以使用 do_action() 和 add_action() 函数。

下面是一个示例:

  1. 在需要运行自定义操作的地方添加 do_action() 函数:
do_action('my_custom_hook', $param1, $param2);

在上面的代码中,我们使用 do_action() 函数创建了一个名为 my_custom_hook 的自定义钩子,并传递了两个参数 $param1 和 $param2

  1. 在主题或插件中将函数添加到自定义钩子:
add_action('my_custom_hook', 'my_custom_function', 10, 2);

function my_custom_function($param1, $param2) {
    // 执行自定义功能
}

在上面的代码中,我们使用 add_action() 函数将 my_custom_function() 函数添加到 my_custom_hook 钩子上。该函数将接收前面传递的参数 $param1 和 $param2

现在,当任何地方调用 do_action('my_custom_hook', $param1, $param2) 时,将自动运行 my_custom_function() 函数,并使用相同的参数。

通过这种方式,您可以轻松自定义 WordPress 的行为并添加自己的自定义功能。

do_action 函数具体用法

do_action 是一个非常常用的 WordPress 功能,它主要用于在 WordPress 各个地方添加自定义的“钩子”(hooks),以便其他函数或插件可以在这个钩子处执行预定的操作。下面是 do_action 函数的具体介绍和用法:

语法

do_action( $tag, $arg1, $arg2, ... );

参数

  • $tag(必填):字符串类型,表示添加的钩子的名称,也称为事件标识符。
  • $arg1, $arg2, ...(可选):参数列表,传递到该钩子回调函数中的参数,可以是 0 个或多个。

返回值

该函数没有返回值。

说明

do_action 函数的作用是触发指定的钩子,以执行与该钩子关联的所有回调函数。钩子是一种特殊的 WordPress 功能,可以让你在指定位置注入自定义代码,从而扩展 WordPress 的功能。

示例

以下是使用 do_action 函数的示例:

// 在 "wp_head" 钩子处添加代码
function my_custom_code() {
    echo '<!-- My custom code -->';
}
add_action( 'wp_head', 'my_custom_code' );

// 在 "init" 钩子处添加自定义的函数
function my_function( $arg1, $arg2 ) {
    // do something with $arg1 and $arg2
}
add_action( 'init', 'my_function', 10, 2 );

// 在 "my_custom_hook" 钩子处添加代码
function my_custom_hook_callback( $arg1, $arg2 ) {
    // do something with $arg1 and $arg2
}
do_action( 'my_custom_hook', $arg1, $arg2 );

上面的代码展示了三种使用 do_action 函数的方式:

  1. 使用 add_action 函数将一个回调函数附加到指定的钩子上。
  2. 使用 add_action 函数并指定 $arg1, $arg2 参数来传递参数。
  3. 使用 do_action 函数手动触发一个自定义的钩子,并传递参数。
添加UTHEME为好友
扫码添加UTHEME微信为好友
· 分享WordPress相关技术文章,主题上新与优惠动态早知道。
· 微信端最大WordPress社群,限时免费入群。