web-dev-qa-db-fra.com

Insérer des données dans la table `post meta`?

Comment pourrais-je insérer des données dans le méta-tableau post? Je sais comment interroger et wpdb fonctionne mais je ne sais pas comment je peux simplement l'insérer dans la table.

J'ai ces deux champs que je veux insérer ID et Titre, où Titre doit devenir un nouveau message dans mon type de message personnalisé. Société et ID doit en être le contenu. Je n'ai malheureusement aucune idée de comment faire cela.

EDIT: Je ne suis pas sûr si cela DOIT être la table méta de publication, mais aussi longtemps qu'une nouvelle publication de type personnalisé apparaît.

Merci d'avance!

1
David H

Vous n'avez pas besoin d'utiliser le post_meta ici, car toutes les informations sont disponibles dans posts.

Pour insérer une nouvelle publication, utilisez wp_insert_post( $post ) et transmettez les arguments à votre tableau $post-. Cette fonction peut renvoyer un objet WP_Error- pour le traitement des erreurs (si le deuxième argument est défini sur true, renvoie 0 si l'erreur est false) et renvoie la ID de la publication insérée.

Voir la liste complète des arguments de wp_insert_post() sur le 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 );
}
5
fischi

Vous pouvez exécuter n'importe quelle requête comme suit et vérifier son succès. Faites-moi savoir si cela fonctionne.

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
1
Praveen