WordPress中add_action(将函数连接到指定action)
首先说下WordPress中用的钩子,将一个函数,以一个新的动作命名,该函数就是add_action.下面来讲解一下该函数的用法。
语法:
1 2 3 |
<?php add_action( $tag, $function_to_add, $priority,$accepted_args ); ?> |
参数:
$tag
(字符串)(必填)$function_to_add 所挂载的动作(action)的名称。也可以是一个主题或插件文件内部的一个动作,或者特定的标签“all”,这个函数将被所有的钩子(hooks)调用。
默认值:None
$function_to_add
(回调)(必填)你希望挂载的函数的名称。注:在 PHP“回调”类型文档中 所罗列的字符串格式化的语法均可用。
默认值:None
$priority
(整数)(可选)用于指定与特定的动作相关联的函数的执行顺序。数字越小,执行越早,具有相同优先级的函数在它们被添加到动作的顺序执行。
默认值:10
$accepted_args
(整数)(可选)挂钩函数所接受的参数数量。在 WordPress1.5.1 及以后的版本中,挂钩函数可以是调用do_action() 或 apply_filters()时设置的参数。例如,comment_id_not_found动作将传递任何函数,若该函数将所请求的评论编号连接到该动作。
默认值:1
返回值
(布尔)总是True。
1 |
do_action( 'personal_options_update', $user_id ); |
意思是将参数$user_id传递给函数,至于函数名,请在functions.php或其包含的文件中(用Advanced Search and Replace之类的软件搜索整个主题或插件的文件夹吧)搜索personal_options_update,你可能会找到一个类似于
1 |
add_action('personal_options_update','函数名'); |
总之,搜索personal_options_update是关键,搜索到它了,你就找到处理数据的函数了;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
<?php //如果当前用户不能编辑用户,就返回权限不足的信息。 if ( !current_user_can('edit_user', $user_id) ) wp_die(__('You do not have permission to edit this user.')); //如果是这个页面就怎么着,不是就怎么着,如果原代码中就是IS_PROFILE_PAGE,那么,你就再用上述方法搜这个常量,如果你感兴趣的话。 if ( IS_PROFILE_PAGE ) { do_action( 'personal_options_update', $user_id ); } else { do_action( 'edit_user_profile_update', $user_id ); } //关键函数不在这个文件中,而是在functions.php或其包含的文件中 |
- WordPress中get_bloginfo(获取博客信息)
- WordPress中wp_head()优化