add_filter()使用与解析

文章目录

常用函数-add_filter()

说明

将函数连接到特定过滤器动作。

过滤器是WordPress发布的一种hook,在不同类别的文本被添加到书库据或发送到浏览器窗口前对这些文本进行修改。插件可用过滤器API规定在修改特定类型的文本时,执行一个还是多个PHP函数。在Plugin API上查阅过滤器hook列表。

用法

<?php add_filter($tag,  $function_to_add,  $priority = 10,  $accepted_args = 1); ?>

示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
add_filter( 'bloginfo', 'mybloginfo', 1, 2 );
add_filter( 'bloginfo_url', 'mybloginfo', 1, 2 );
 
function mybloginfo( $result='', $show='' ) {
	switch ( $show ) {
		case 'wpurl':
			$result = SITE_URL;
			break;
		case 'template_directory':
			$result = TEMPL_DIR;
			break;
		default: 
	}
	return $result;
}

参数

$tag

(字符串)(必需)连接到$function_to_add的过滤器名称

默认值:None

$function_to_add

(回调)(必需)应用过滤器时被调用函数的名称

默认值:None

$priority

(整数)(可选)用于规定函数被执行的顺序,函数与特定动作关联。较小的数字匹配较早的执行,同等优先级的函数按加入action的顺序被执行。

默认值:10

$accepted_args

(整数)(必需)函数所接受参数的数量。在WordPress 1.5.1及之后版本中,连接的函数可吸收其它在调用do_action() 或 apply_filters()时设置的参数。

默认值:None

用户还需要为过滤器回调时函数的命名空间提供一个指示器,如:

<?php add_filter(‘media_upload_newtab’, array(&$this, ’media_upload_mycallback’)); ?>

否则WordPress会为函数查找自备命名空间,从而引发异常状况。

返回的值

$function_to_add成功添加到$tag过滤器时返回true。返回函数可接受的参数数量。在WordPress 1.5.1及之后版本中,连接的函数可吸收其它在调用do_action() 或 apply_filters()时设置的参数。例如,comment_id_not_found动作将传递任何函数,若该函数将所请求的评论编号连接到该动作。

常用的tag

bloginfo
the_content
the_title
bloginfo

更多可到这里查看:http://adambrown.info/p/wp_hooks

本文出自 TENNFY博客,转载时请注明出处及相应链接。

本文永久链接: https://www.tennfy.com/282.html

下一篇文章:

上一篇文章:

4人参与了讨论

    • tennfy 说:

      do_action()一般是放在我们要执行动作的源代码位置,我们一般使用add_action(),wordpress核心会调用相应的do_action()来触发动作

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

9 + 2 = ?


您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

返回顶部