Veuillez noter que je publie maintenant mes articles sur Apical, ma plateforme d'apprentissage.

Algorithme pour insérer plusieurs enregistrements dans une table WordPress

Attention
Vous trouverez une version plus à jour de cet article sur Apical, votre plateforme d'apprentissage :
https://apical.xyz/fiches/donnees_personnalisees_wordpress/Inserer_plusieurs_enregistrements_dans_une_table

Apical, ma plateforme d'apprentissage

Dans cet article, je vous présente un petit algorithme pour faciliter votre travail lorsque vous devez insérer par programmation plusieurs enregistrements dans une table WordPress.

▼Publicité

La méthode $wpdb->insert() permet d'insérer un enregistrement dans une table WordPress.

Ex :

WordPress (PHP)

$reussite = $wpdb->insert(

    $nom_table,

    array(

        'champ1' => 'une chaîne',

        'champ2' => 9,

    ),

    array(

        '%s',

        '%d',

    )

);

 

if ( ! $reussite ) {

    // réagir en cas de problème

    monprefixe_log_debug( $wpdb->last_error );

    // ...

}

Cependant, lorsqu'on doit insérer une série d'enregistrements dans une table, le code peut devenir très long.

L'algorithme suivant permettra de faciliter votre travail :

WordPress (PHP)

$id = []; // pour stocker les identifiants au cas où ils devraient être utilisés plus loin

 

$donnees = array(

    array( 'chaîne 1', 10),

    array( 'chaîne 2', 20),

    array( 'chaîne 3', 30),

);

 

foreach( $donnees as $donnee ) {

    $reussite = $wpdb->insert(

        $nom_table,

        array(

            'champ1' => $donnee[0],

            'champ2' => $donnee[1],

        ),

        array(

            '%s',

            '%d',

        )

    );

 

    $id[] = $wpdb->insert_id;

   

    if ( ! $reussite ) {

        // réagir en cas de problème

        monprefixe_log_debug( $wpdb->last_error );

        // ...

    }

}

Catégories