Wordpress为每个用户分配页面

时间:2014-09-15 09:38:08

标签: wordpress registration

当新用户注册到网站时,有没有办法为这个新用户创建和分配页面(自定义帖子类型)?

实施例

--Business owner (user profile)
    |___ Business page (custom post type business)

任何想法?。

感谢 佩佩

1 个答案:

答案 0 :(得分:1)

好吧......实际上并不是很难。

从wordpress读取钩子的引用我写道:

function add_business_page($user_id){
    $user = get_userdata($user_id);
    if( reset($user->roles) != "adherent" ) return;
    $post_type = 'commerce';
    global $wpdb;
    $where = get_posts_by_author_sql( $post_type, true, $user_id );
    if( $wpdb->get_var( "SELECT COUNT(*) FROM $wpdb->posts $where" ) >= 1 ) return; 
        $user_page = array(
            'post_title' => "Titre de la page : " . $user->user_login,
            'post_type' => 'commerce',
            'post_content' => '',
            'post_author' => $user_id,
            'post_status' => 'publish'
            );

    wp_insert_post( $user_page );
}
add_action('user_register', 'add_business_page');
add_action('set_user_role', 'add_business_page');

因此,您可以创建用户或修改角色,每个用户只需创建一个页面并分配给该用户。