在WordPress中,add_action
和 add_filter
是两个非常核心的函数,它们允许开发者在不修改WordPress核心代码的情况下添加自定义功能或修改现有的功能。以下是这两个函数的基本使用方法:
add_action()
add_action()
函数用于在WordPress动作钩子处添加自定义功能。动作钩子是在WordPress执行过程中特定的时间点触发的点。
基本语法如下:
add_action( $tag, $function_to_add, $priority, $accepted_args );
参数说明:
$tag
: 钩子的名称,例如init
,wp_enqueue_scripts
,admin_menu
等。$function_to_add
: 当钩子被触发时要调用的函数名或者匿名函数。$priority
: (可选)钩子的优先级,默认为10。数值越小,优先级越高。$accepted_args
: (可选)传递给函数的参数数量,默认为1。
示例:
function my_custom_function() {
// 自定义功能代码
echo "Hello, World!";
}
add_action( 'init', 'my_custom_function' );
add_filter()
add_filter()
函数用于在WordPress过滤器钩子处添加自定义功能。过滤器钩子允许你在数据输出之前对其进行修改。
基本语法如下:
add_filter( $tag, $function_to_add, $priority, $accepted_args );
参数说明:
$tag
: 过滤器的名称,例如the_content
,the_title
,widget_text
等。$function_to_add
: 当过滤器被触发时要调用的函数名或者匿名函数。$priority
: (可选)过滤器的优先级,默认为10。数值越小,优先级越高。$accepted_args
: (可选)传递给函数的参数数量,默认为1。
示例:
function my_custom_filter( $content ) {
// 自定义过滤功能代码
return str_replace( 'WordPress', 'WordPress Site', $content );
}
add_filter( 'the_content', 'my_custom_filter' );
在这个例子中,my_custom_filter
函数会在页面内容输出之前被调用,并将所有的 "WordPress" 替换为 "WordPress Site"。
在使用这些函数时,请确保你的自定义函数不会与WordPress核心或其他插件的功能冲突。通常,你会将这些代码放在主题的 functions.php
文件中或者自定义插件中。