Para realizar consultas de base de datos en WordPress disponemos del objeto $wpdb; y sus clases.
En primer lugar se debe definir $wpdb; como variable global, también al instalar WordPress debemos establecer un prefijo de las tablas, por si ese prefijo cambia es importante referirnos a las tablas llamando a ese prefijo
global $wpdb; echo $wpdb->base_prefix."name_table"; //devolverá: wp_name_table. Siempre que el prefijo sea wp_ (recomendado cambiarlo)
Funciones de base de datos
Prepare()
Se utiliza para evitar ataques de inyección SQL. Por tanto es importante usarla siempre que realicemos una consulta a la base de datos.
Query()
Se utiliza para ejecutar cualquier tipo de consulta: select, insert, delete y update.
Get_row()
Devuelve un único registro.
Get_results()
Devuelve todos los registros como una matriz.
Insert()
Se utiliza para insertar registros.
Update()
Se utiliza para hacer actualizaciones.
$mitabla = $wpdb->base_prefix."mitabla"; //insertamos info $wpdb->query( $wpdb->prepare("INSERT INTO $mitabla (campo1, campo2, campo3) VALUES(%s, %s, %d)", 'valor 1', 'valor 2', 95) ); //si no pasamos variables no hay que usar prepare $wpdb->results('select * from $mitabla"); //actualizamos valores $wpdb->update($mitabla, array( 'campo1' => 'otro valor', 'campo2' => 'otro valor' ), array('campo3' => 95)); //borramos $wpdb->query( $wpdb->prepare("DELETE FROM $mitabla WHERE campo3= %d", 95) );
Solucionar errores en las consultas
Siempre que se trabaja con consultas resulta útil poder ver mensajes de error. WordPress nos ofrece algunas funciones:
Show_errors(); y print_errors();
Muestra errores por pantalla.
Num_queries()
Número de consultas ejecutadas
Num_rows()
Número de registros devueltos.
Last_query()
Muestra la ultima consulta por pantalla.
var_dump($wpdb->last_query); echo $wpdb->last_error;
Conclusiones
Ahora podemos crear nuestras propias tablas e integrarlas dentro de WordPress, aprovechándonos de las mejoras de las funciones que se realizan con cada nueva versión.
Deja una respuesta