Initialisierung der WordPress-Klasse wpdb:

function funktionsname() {
	global $wpdb;
}

Beispieltabelle wp_posts (verkürzt)

IDpost_titlepost_statuspost_type
1Artikel 1publishpage
2Artikel 2draftpost
3Artikel 3publishpage

Rückgabewerte der Klasse wpdb (Auswahl)

$wpdb->get_results
liefert alle Ergebniszeilen eine Datenbankabfrage

Beispiel:

function funktionsname() {
global $wpdb;
$abfrage=$wpdb->get_results("SELECT *  FROM wp_posts WHERE post_title LIKE 'Artikel%'");
	foreach ( $abfrage as $abfrage ) {
		echo 'Beiträge: ' . $abfrage->post_title;
	}
}

$wpdb->get_row
liefert nur eine Zeile einer Datenbankbfrage

Beispiel:

function funktionsname() {
	global $wpdb;
	$abfrage=$wpdb->get_row("SELECT *  FROM wp_posts WHERE ID = 1");
	echo $abfrage->post_title; // Artikel 1
}

$wpdb->num_rows
liefert die Anzahl der gefundenen Ergebnisse bzw. Tabellenzeilen

Beispiel:

function funktionsname() {
	global $wpdb;
	$abfrage=$wpdb->get_results("SELECT *  FROM wp_posts WHERE post_status='publish'");
	$anzahl=$wpdb->num_rows;

	echo $anzahl." veröffentlichte Artikel"; // 2
}

$wpdb->prefix

Datenbankabfrage mit esc_sql() sicherer (Schutz vor SQL-Injection) machen:

Beispiel:

function funktionsname($suchbegiff) {
	global $wpdb;	
	$vergleich=esc_sql($suchbegriff);
	
	$abfrage=$wpdb-> get_results("SELECT *  FROM wp_posts WHERE post_category LIKE '".$vergleich."'");
	$anzahl=$wpdb->num_rows;

	echo 'Treffer: ' . $anzahl;
}