$wpdb->prepare

WordPress 🟡 Mid

Definition

Methode de la classe $wpdb pour creer des requetes SQL parametrees dans WordPress. Equivalent des prepared statements PDO, adapte a l'ecosysteme WP.

Analogie

Comme un coffre-fort avec une serrure a combinaison : les donnees ne peuvent pas s'echapper du cadre prevu.

Exemple de code

global $wpdb;
$results = $wpdb->get_results(
  $wpdb->prepare(
    "SELECT * FROM {$wpdb->posts}
     WHERE post_author = %d AND post_status = %s",
    $authorId, 'publish'
  )
);

Cas d'usage

Pour toute requete SQL directe dans WordPress qui inclut des variables.

Anti-pattern

Concatener des variables dans la requete : $wpdb->query("DELETE FROM ... WHERE id = $id").
#core#interview#security#wordpress