Menubar

miércoles, 19 de julio de 2017

Como acceder a la base de datos de wordpress desde php

Por J. Manuel Mar H. Editar
Compartir en Facebook
Compartir en Twitter
Compartir en MeWe
Enviar a Reddit
Guardar en Internet archive
Guardar en  archive.today
Enviar por email
Base de datos  En una entrega anterior mostré como podemos leer directamente un archivo PO desde php (sin usar las funciones nativas de Wordpress), ahora vemos como podemos acceder y manipular la base de datos de Wordpress directamente desde Php. Te invito a que sigas leyendo por favor este tutorial y dejes tus comentarios.


  Wordpress tiene funciones nativas para manipular una base de datos (de si mismo), pero si quisiéramos conectarnos a esa base de datos desde fuera de Wordpress (otro archivo php en el mismo servidor), podríamos:
  1. Heredar las funciones de Wordpress a nuestro archivo.
  2. Usar una pequeña librería que nos facilite el trabajo (cortesía de un servidor).
<?
    
 include("../../../wp-config.php");
 include("db.php");

 global $table_prefix;

 $conn = dbconnect(DB_HOST, DB_NAME, DB_USER, DB_PASSWORD);

//Borrar o actualizar datos de una tabla de Wordpress

mysql_query($SQL_SENTENCE);

//Leer datos mediante una sentencia SQL desde una tabla de Wordpress

$rs = @dbfetch_array($SQL_QUERY_SENTENCE, $conn);

if($rs != NULL) $rst = mysql_fetch_array($rs);

if($rst != NULL) @mysql_data_seek($rs, 0);
  
//Si queremos unicamente leer un campo del primer registro
$data = $rst["FIELDNAME"];

//Si queremos leer todos los registros

while($rst = mysql_fetch_array($rs))
{

  $data1 = $rst["FIELDNAME1"];

  $data2 = $rst["FIELDNAME2"];

}


$rst = null;

$rs = null;
$conn = null;

?>

 Como pueden ver el procedimiento es muy simple, primero incluimos en nuestro archivo php, la configuración de wordpress con la línea include("../../../wp-config.php"); , esto corresponde a tres directorios atrás de la ruta de nuestro tema en php, ejemplo /wp-content/themes/nuestrotema , en la carpeta "nuestrotema" debemos poner el archivo php personalizado que accederá a la base de datos de Wordpress, si cambiamos la ruta, entonces debemos ajustar está línea que menciono a fin de poder encontrar el archivo de configuración.

Posteriormente usaremos la librería para conectar a la base de datos:
include("db.php");

Analizemos el interior del archivo db.php

<?

// este código está basado en http://www.webestilo.com/php/php07c.phtml


/**** CONECTAR A LA BASE DE DATOS ****/

function dbconnect($dbhost, $dbname, $dbusername, $dbpassword)
{

     if(!($conn = mysql_connect(trim($dbhost), trim($dbusername), trim($dbpassword))))

     {

       $connection = null;

       echo "Error, no se a podido conectar con la base de datos, revise su configuraci&oacute;n...";
       exit();
  
     }
    else
       $connection = $conn;
   
    if(!mysql_select_db(trim($dbname), $conn))
    {

        $connection = null;

     echo "Error, no se a podido seleccionar la base de datos en &eacute;ste momento, por favor, int&eacute;ntelo m&aacute;s tarde.";
       exit();
  
     }
     else
      $connection = $conn;
   
     return $connection;

  }

  /**** CONECTAR A LA BASE DE DATOS ****/

  /**** RECUPERAR REGISTROS DE LA BASE DE DATOS ****/

  function dbfetch_array($SQL, $connection)
  {
     return @mysql_query($SQL, $connection);
  }
  /**** RECUPERAR REGISTROS DE LA BASE DE DATOS ****/

?>


  Esta librería una vez establecida la conexión a la base de datos, nos permite poder leer los registros de la misma de un modo sencillo, nos regresa un array con todos los registros, posteriormente ya en nuestro archivo php los leeremos de forma secuencial y los aplicaremos como gustemos.

Espero les sea de mucha utilidad.

Procedencia de las imágenes:
File: Logo base de datos 
URL: https://icons8.com/icon/1475/database
Licencia: Creative Commons

¿Te gustó este post?, entonces si lo deseas puedes apoyarnos para continuar con nuestra labor, gracias.



Licencia de Creative Commons Esta obra está bajo una licencia de Creative Commons Reconocimiento 4.0 Internacional, haga clic aquí para conocer más detalles.


Compartir:



Danos tu voto
Comunidad Kynamio
Directorio de blogs, ¡agrega el tuyo!
Programas para el mantenimiento de Windows
Blog de seguridad informatica