server-room-3d-illustration-with-node-base-programming-data-design-element (1)

Bases de Datos en WordPress con PHP

Últimamente, todas las webs empiezan y necesitan trabajar con Bases de Datos. A día de hoy, poder crearse un portal te relaciona en concreto con WordPress. Además, php es un lenguaje singular y muy útil a la hora de programar en la parte de FrontEnd. Combinando las tres cosas, se puede sacar algo bastante útil y necesario a la hora de trabajar con los datos en tu propio sitio web. Así que en esta publicación, voy a explicaros como usar Bases de Datos en WordPress con PHP.

Pasos a realizar para añadir bases de datos en WordPress con PHP

Lo primero, es hacer una llamada a los ficheros wp-config.php y wp-load.php. Esta llamada sería conveniente usarla entre las etiquetas <head> y </head>.

<?php

require_once($_SERVER['DOCUMENT_ROOT'] . $folder . '/wp-config.php'); require_once($_SERVER['DOCUMENT_ROOT'] . $folder . '/wp-load.php'); ?>

Luego, cuando llegamos a la parte donde queremos empezar a trabajar con una tabla de esa base de datos, añadimos la llamada a la SQL y la incluimos dentro de una variable PHP.

<?php

global $wpdb; $query_datos_top = 'SELECT * FROM tabla WHERE campo > 0 ORDER BY campo ASC;'; $results = $wpdb->get_results($query_datos_top); ?>

Aprovechamos también de que si en alguna página, pasamos una variable por la url, podemos recogerla y añadirla a la consulta.

<?php

$id = $_GET['id']; global $wpdb; $query_datos_top = 'SELECT * FROM tabla WHERE id IN ('.$id.') ORDER BY campo ASC;'; $results = $wpdb->get_results($query_datos_top); ?>

Por último, pasamos a la carga de la base de datos en WordPress con PHP. Los comandos que necesitaremos para poder recoger todos los datos de esta serán los siguientes:

<?php

$results = $wpdb->get_results($query_datos_top); if (!$results) { echo "Aqui no hay nada"; } else { foreach ( $results as $fila ) : $id= $fila->id; $nombre= $fila->nombre; echo 'La fila número '.$id.' tiene el valor '.$nombre; endforeach; } ?>

Esto recogerá la consulta. Si no recoge nada, imprimirá una frase que ponga "Aquí no hay nada". Sin embargo, al obtener un valor, creará un for each y recogerá todas las filas que obtenga, e irá una por una recogiendo los valores que pasamos en las variables. Por lo tanto, imprimirá en nuestra pantalla tantas frases como valores recogidos, con distinto id y distinto nombre, el correspondiente de cada fila. También, podréis incorporar código HTML dentro de los echo si queréis maquetar los resultados.

De esta forma, es como incorporamos Bases de Datos en WordPress con PHP. Espero que os haya sido útil, cualquier duda podéis añadirla en los comentarios.

bigdump-pc (1)

BigDump: Importa tus bases de datos pesadas

A la hora de importar grandes archivos SQL con muchas tablas e inserciones de registro, suele dar algo de conflicto a la hora de incorporarlos, teniendo que modificar parametros de php.ini como upload_max_filesizememory_limit o el post_max_size. También puedes probar en utilizar programas que puedan cargar la base de datos como HeidiSQL o Workbench. Sin embargo, descubri BigDump como opción viable para trabajar con bases de datos grandes, e interesante para hablaros de él.

¿Que es BigDump?

BigDump es un fichero que funciona como importador de base de datos que lee todo tipo de inserciones, tanto generar tablas como insertar, actualizar y borrar registros. Este documento necesita que modifiques varias lineas para que cargue bien.

¿Que parámetros hay que cambiar?

Al principio, necesitarás añadir la configuración de la base de datos a la que quierás cargar los datos:

  • $db_server = "localhost"; (Nombre del Servidor)
  • $db_name = "database"; (Nombre de la Base de Datos)
  • $db_username = "user"; (Usuario)
  • $db_password = "password"; (Contraseña)

Luego, para indicar el fichero que quieres cargar debes de modificar:

  • $filename = "fichero.sql"; (Nombre del fichero)

Por último, puedes modificar el número de líneas que puedes importar. Si el fichero es grande y tiene 35.000 líneas, lo que debes de modificar es lo siguiente:

  • $linespersession = 35000; (Número de líneas)
  • $max_query_lines = 35000; (Máximo número de líneas)

Por último, este fichero lo colocáis dentro del servidor, aconsejablemente crear una carpeta donde añadir tanto este fichero como los archivos SQL que queraís importar (/db/("ficheros")).

Una vez hecho esto, puedes arrancar el fichero desde "Dirección web/db/bigdump.php" y este cargará el fichero de manera web.

Verás que tienes un enlace para arrancar el importador y una vez puesto en marcha, solo pueden pasar 2 cosas.

  1. Cargue la sql todo por completo y sin problemas.
  2. Salte algún tipo de error, lo que mostrará el motivo del error en la última línea.
    1. Si falla porque hay un campo desconocido, siempre puedes ir a la tabla origen y crear el nuevo campo o borrarlo de tu SQL.
    2. Si falla porque hay una clave primaría duplicada, quizás sea porque haya generado tu base de datos origen una clave primaria repetida, una de ellas pueda estar unida a otra columna conjuntamente.

Cualquier error que surja o aportación que puedas ofrecer, puedes comentármelo en los comentarios

Copyright © 2023 All Rights Reserved