Wordpress - 创建用户时创建页面

时间:2014-02-03 03:34:43

标签: wordpress

我想创建一个在wordpress中创建页面的函数,该函数使用特定页面标题,特定URL,并且在创建新用户时位于已存在的父页面下。

一个例子:

创建新的用户调用user1,还会在指定的父网页ID下创建一个名为User1's Page的新网页,其中包含user1s-page的标记。

2 个答案:

答案 0 :(得分:0)

你需要挂钩注册用户钩子,这里;

http://codex.wordpress.org/Plugin_API/Action_Reference/user_register

然后构建一个使用此函数插入​​帖子(页面)的函数;

http://codex.wordpress.org/Function_Reference/wp_insert_post

答案 1 :(得分:0)

我在写作的时候没有测试过,但是应该这样做。确保将$ post_parent设置为要用作父级的页面的ID。它目前设置为0,因此没有父级。

function wpse_user_registration_create_page( $user_id ) {
    // Get the new user by their ID.
    $new_user = get_user_by( 'id', $user_id );

    // Check a user was found.
    if ( ! $new_user )
        return;

    // Create the post title. E.g. User1's Page
    $post_title = ucfirst( $new_user->display_name ) . "'s Page";

    // SET THE ID OF THE PARENT PAGE HERE!!!
    $post_parent = 0;

    $post_args = array(
        "post_name"   => sanitize_title( $post_title ),
        "post_title"  => $post_title,
        "post_type"   => "page",
        "post_status" => "publish",
        "post_author" => $new_user->ID,
        "post_parent" => $post_parent,
    );

    wp_insert_post( $post_args );
}
add_action( 'user_register', 'wpse_user_registration_create_page' );