Inserting data into `post meta` table?

How would I be able to insert data into the post meta table? I know how querying and wpdb works but I have no idea how I can just insert it into the table.

I have these two fields I want to insert ID and Title where Title should become a new post in my Custom Post type Company and ID should be the Content of it. I unfortunately have no idea how to do this.

Read More

EDIT: I’m not sure if it HAS to be the post meta table but as long as a new Custom post type post appears.

Thanks in advance!

Related posts

Leave a Reply

2 comments

  1. You do not need to use the post_meta here, as all the Information is available in posts.

    To insert a new post, use wp_insert_post( $post ), and pass the arguments to your $post-array. This function can return a WP_Error-object for Error handling (if the second argument is set to true, returns 0 on error if false), and returns the ID of the inserted post.

    See the full list of arguments for wp_insert_post() on the Codex.

    $post = array(
        'post_content'   => $content, // The content you want to have set in the content
        'post_title'     => $title, // The title of your post.
        'post_status'    => 'publish', // Whatever status you want to have
        'post_type'      => 'your_custom_post_type' // the slug of your custom post type
    ); 
    
    $thisid = wp_insert_post( $post, true ); // insert the post and allow WP_Error object
    
    if ( is_wp_error( $thisid ) ) {
        // Error handling
    } else {
        // the rest of your code, inserting metadata
        update_post_meta( $thisid, 'your_meta_key', $your_meta_value );
    }
    
  2. You can execute any query as follows and check for success , Let me know if it works.

    Praveen

    $InsertQuery = "INSERT INTO post_meta VALUES (Enter Values Here)";
    
    //Create a query named InsertQuery
    
    $insert = $wpdb->query($InsertQuery);
    
    //Execute InsertQuery
    
    if($wpdb->insert_id){
        echo 'Post Entered Successfully.';
    }else{
        echo 'Unable to Insert Post.';
    }
    
    //Check if the Query has run successfully