Automatically create page in WordPress

前端 未结 2 1475
忘了有多久
忘了有多久 2021-02-01 08:20

How can I automatically create a WordPress page (for example, when plugin is activated)?

相关标签:
2条回答
  • 2021-02-01 08:56

    Wordpress provides the wp->query API method for database abstraction. You can create the appropriate query to make a Page when needed.

    0 讨论(0)
  • 2021-02-01 09:13

    Use wp_insert_post(), which can insert pages as well: http://codex.wordpress.org/Function_Reference/wp_insert_post

    See post_type below.

    $post = array(
      'ID' => [ <post id> ] //Are you updating an existing post?
      'menu_order' => [ <order> ] //If new post is a page, sets the order should it appear in the tabs.
      'page_template' => [ <template file> ] //Sets the template for the page.
      'comment_status' => [ 'closed' | 'open' ] // 'closed' means no comments.
      'ping_status' => [ ? ] //Ping status?
      'pinged' => [ ? ] //?
      'post_author' => [ <user ID> ] //The user ID number of the author.
      'post_category' => [ array(<category id>, <...>) ] //Add some categories.
      'post_content' => [ <the text of the post> ] //The full text of the post.
      'post_date' => [ Y-m-d H:i:s ] //The time post was made.
      'post_date_gmt' => [ Y-m-d H:i:s ] //The time post was made, in GMT.
      'post_excerpt' => [ <an excerpt> ] //For all your post excerpt needs.
      'post_name' => [ <the name> ] // The name (slug) for your post
      'post_parent' => [ <post ID> ] //Sets the parent of the new post.
      'post_password' => [ ? ] //password for post?
      'post_status' => [ 'draft' | 'publish' | 'pending' ] //Set the status of the new post.
      'post_title' => [ <the title> ] //The title of your post.
      'post_type' => [ 'post' | 'page' ] //Sometimes you want to post a page.
      'tags_input' => [ '<tag>, <tag>, <...>' ] //For tags.
      'to_ping' => [ ? ] //?
    );  
    
    // Insert the post into the database
    wp_insert_post( $post );
    
    0 讨论(0)
提交回复
热议问题