我正在使用以下代码,这些代码允许我在添加新用户时自动为新用户创建页面。我想知道如何仅为添加到订阅者角色的用户创建新页面。
感谢任何帮助或链接。
/* Create New page for New User */
/* CREATE NEW POST WITH USER, GIVE POST USER'S NAME*/
function my_create_page($user_id){
$the_user = get_userdata($user_id);
$new_user_name = $the_user->user_login;
$my_post = array();
$my_post['post_title'] = $new_user_name;
$my_post['post_type'] = 'page';
$my_post['post_content'] = '';
$my_post['post_parent'] = '1569';
$my_post['post_status'] = 'publish';
wp_insert_post( $my_post );
}
add_action('user_register', 'my_create_page');
答案 0 :(得分:2)
你可以使用动作' profile_update'在更改用户角色时创建页面。
<?php
add_action( 'profile_update', 'my_profile_update', 10, 2 );
function my_profile_update( $user_id, $old_user_data ) {
// get user data
$user_info = get_userdata($user_id);
$roles = $user_info->roles;
if(in_array('subscriber', $roles)) {
//create your page.
}
}
?>
如果您需要对用户注册执行操作,您可以执行以下操作:
<?php
add_action( 'user_register', 'myplugin_registration_save', 10, 1 );
function myplugin_registration_save( $user_id) {
// get user data
$user_info = get_userdata($user_id);
$roles = $user_info->roles;
if(in_array('subscriber', $roles)) {
//create your page.
}
}
?>