Una de las mejores cosas de WordPress es lo fácil que es para cualquier persona tener un sitio web funcional y de gran apariencia sin ningún conocimiento de codificación.
Es totalmente posible iniciar un sitio web desde cero, hacerlo exactamente como lo desea y hacer lo que desea sin escribir una línea de código.
Sin embargo, hay ventajas en poder hacer correcciones a su backend de WordPress usted mismo. Un sitio típico de WordPress usa varios tipos de código: HTML y CSS se usan para controlar la apariencia del sitio, PHP y JavaScript proporcionan la funcionalidad del sitio y SQL (junto con PHP) se usa para comunicarse con la base de datos.
Los fundamentos de la base de datos de WordPress
Todo el contenido de su sitio web junto con su estructura e información del usuario se almacena en la base de datos. Esto hace que los sitios de WordPress sean del tipo dinámica un sitio web donde HTML se genera en tiempo real en lugar de estático sitios que utilizan archivos HTML prefabricados.
Cada vez que alguien accede a su sitio de WordPress, el contenido se extrae de la base de datos mediante una serie Consultas SQL.
Todos los datos utilizados por su sitio web se almacenan en mesas en la base de datos Puede pensar en una tabla como un contenedor de almacenamiento para un tipo de datos, manteniendo sus datos organizados almacenando diferentes tipos de datos en diferentes tablas.
Las tablas básicas de WordPress son:
- wp_posts – todo el contenido de sus publicaciones y páginas, así como los datos del menú y los archivos adjuntos multimedia.
- wp_postmeta – metadatos para cada publicación. Los metadatos se agregan a esta tabla cuando agrega un campo personalizado a sus publicaciones, por lo que puede, por ejemplo, agregar la música que estaba escuchando en el momento de la publicación.
- wp_comentarios – todos los comentarios en publicaciones y páginas, incluido el autor, la fecha, el correo electrónico, etc.
- wp_commentmeta – metadatos para comentarios.
- usuarios_wp – nombres de usuario, contraseñas (encriptadas) y otros datos del usuario.
- wp_usermeta – metadatos para los usuarios.
- opciones_wp – Configuración general de WordPress.
- wp_enlaces – se usa para enlaces de blogroll que no se usan actualmente en la mayoría de los sitios de WordPress.
- wp_terms – categorías y etiquetas para publicaciones.
- wp_termmeta – metadatos para categorías y etiquetas.
- wp_term_relaciones – vincula publicaciones con categorías y etiquetas.
- wp_term_taxonomy – Las taxonomías se utilizan para clasificar sus datos. Las taxonomías predeterminadas de WordPress son Categoría, Etiqueta y Categoría de enlace. Esta tabla gestiona las taxonomías incluyendo su nombre y descripción.
Estas son tablas básicas de WordPress, pero probablemente tenga más que se agregan mediante complementos y temas instalados.
Sus tablas de WordPress también pueden tener un prefijo diferente. «Wp_» es el valor predeterminado, pero a menudo se cambia por motivos de seguridad.
Cada tabla en la base de datos tiene varios campos. Por ejemplo, wp_users tiene:
- IDENTIFICACIÓN
- inicio de sesión de usuario
- contraseña de usuario
- Nombre de usuario
- usuario_email
- url_usuario
- usuario registrado
- clave_de_activación_de_usuario
- Estatus de usuario
- nombre para mostrar
Usando SQL puede ver o editar cualquier campo en cualquier tabla de base de datos. También puede agregar o eliminar datos y crear o eliminar tablas según sea necesario.
Cómo usar comandos SQL con una base de datos de WordPress
El código PHP en su sitio de WordPress incluye comandos SQL para comunicarse con la base de datos, pero si desea realizar operaciones manuales con la base de datos, es más conveniente poder enviar comandos SQL manualmente.
Usos de WordPress mysql como un sistema de gestión de base de datos. MySQL no viene con una interfaz gráfica de usuario y se puede administrar a través de la línea de comandos, pero a la mayoría de los usuarios les resultará mucho más fácil «ver» las tablas de su base de datos.
Hay varias interfaces gráficas de usuario para MySQL, pero la más popular es phpMyAdmin. Normalmente puede acceder a phpMyAdmin desde el panel de administración de hosting:
Dependiendo de su servidor web, es posible que se le redirija automáticamente a la página de inicio de phpMyAdmin o que deba ingresar un nombre de usuario y una contraseña. Estos detalles deben proporcionarse al configurar su cuenta de alojamiento, pero comuníquese con el soporte técnico de su alojamiento si no está seguro de cuáles son.
Después de iniciar sesión, debería ver esta pantalla:
Sus bases de datos se mostrarán a la izquierda y debería haber una para cada sitio de WordPress que haya instalado en su servidor. También puede tener otras bases de datos para cosas no relacionadas con WordPress.
Si encuentra la base de datos del sitio en el que desea trabajar y hace clic en ella (si no está seguro de qué base de datos es la correcta, puede encontrarla en wp-config.php junto a DB_NAME), obtenga una descripción general de todas las tablas en la base de datos que deberían ser las mismas que las enumeradas anteriormente si se trata de una instalación nueva de WordPress:
En esta página, puede crear una nueva tabla y hacer clic en las tablas existentes para ver los datos. También hay varias pestañas en la parte superior de la página en las que puede hacer clic para realizar diferentes funciones:
- sql
- Búsqueda
- Consulta
- Exportar
- Importar
- Operaciones
- Rutinas
- Eventos
- Generar
- Diseñador
No tendrá que preocuparse por la mayoría de ellos a menos que quiera abordar operaciones avanzadas de bases de datos, pero hay algunos que vale la pena revisar.
Buscando en la base de datos
La pestaña Buscar puede ser una forma conveniente de buscar y editar registros de uno en uno sin usar comandos SQL. Por ejemplo, si desea buscar un usuario específico por correo electrónico, simplemente ingrese la dirección de correo electrónico en el cuadro de búsqueda y seleccione la base de datos wp_users (también puede buscar en toda la base de datos).
Cuando se complete la búsqueda, haga clic en el enlace «examinar» y haga clic en los resultados para editarlos directamente. También puede eliminar y copiar registros.
Antes de continuar, es obvio (pero lo diré de todos modos) que debe hacer una copia de seguridad de su base de datos de WordPress antes de realizar cualquier cambio. Un simple error tipográfico en un comando SQL puede romper todo su sitio y no siempre es fácil corregir errores, especialmente si no está seguro de cómo rompió algo.
Cómo hacer una copia de seguridad de su base de datos de WordPress con PHPMyAdmin
Hay varios complementos de copia de seguridad de WordPress que harán una copia de seguridad de todo su sitio web, incluida su base de datos, pero como ya está en PHPMyAdmin, vale la pena aprender a hacerlo manualmente.
Afortunadamente, es muy fácil de hacer (a menos que tenga una base de datos particularmente grande o que su sitio de WordPress comparta la base de datos con otros programas, en cuyo caso siga el procedimiento de copia de seguridad personalizado). aquí).
Simplemente vaya a la pestaña «Exportar», seleccione «Rápido» como método de exportación, seleccione «SQL» como formato y haga clic en el botón Ir.
El archivo se descargará a su computadora y podrá moverlo a un lugar seguro para su almacenamiento.
Si necesita restaurar desde una copia de seguridad, vaya a la pestaña «Importar», seleccione el archivo de copia de seguridad y haga clic en Ir (en la mayoría de los casos, la configuración predeterminada debería ser suficiente).
Ejecutar comandos SQL en PHP MyAdmin
Al hacer clic en la pestaña «SQL», accederá a una pantalla con un cuadro de texto grande. Aquí puede ingresar comandos SQL para consultar y editar la base de datos.
Comandos SQL útiles para WordPress
Ahora que puede ver su base de datos y saber cómo buscarla, puede comenzar a divertirse. Hay algunas cosas muy útiles que se pueden hacer con comandos SQL manuales que generalmente no son posibles sin la ayuda de un complemento de terceros.
Tenga en cuenta que si sus tablas tienen un prefijo diferente (no comienzan con «wp_»), deberá editar los nombres de las tablas.
1. Cambia tu contraseña de WordPress
¿Olvidaste tu contraseña y te bloqueaste en tu sitio de WordPress? No se preocupe, puede restablecerlo manualmente en la base de datos con esta consulta SQL:
UPDATE wp_users SET user_pass = MD5( '[new_password]' ) WHERE user_login = '[username]';
MD5 cifra la nueva contraseña para que nadie que tenga acceso a la base de datos pueda leerla.
2. Mover publicaciones a un nuevo autor
Si tiene varios autores en su sitio o está tomando el control de un sitio existente de un propietario diferente, puede mover las publicaciones existentes a su nombre de usuario. Para ello, puede utilizar la siguiente consulta:
UPDATE wp_posts SET post_author = (SELECT ID FROM wp_users WHERE user_login = '[new_author_login]') WHERE post_author = (SELECT ID FROM wp_users WHERE user_login = '[old_author_login]');
3. Eliminación masiva de spam
WordPress viene con el complemento Akismet instalado de forma predeterminada, que es bastante bueno para marcar el spam. Sin embargo, depende de usted verificar y eliminar el correo no deseado con regularidad.
Si lo deja por un tiempo, podría tener miles de mensajes de spam y le llevaría mucho tiempo eliminarlos todos del tablero de un lado. En su lugar, utilice la siguiente consulta SQL para eliminar un lote a la vez:
DELETE FROM wp_comments WHERE comment_approved = "spam";
Si tienes miles de comentarios pendientes y no tienes tiempo de renovarlos, simplemente puedes eliminarlos con la siguiente consulta (pero recuerda que puedes eliminar algunos comentarios reales):
DELETE FROM wp_comments WHERE comment_approved = "0";
Si no desea eliminar todos sus comentarios, pero tiene un problema con un spammer que sigue enviando mensajes a un sitio específico, puede usar esta consulta para deshacerse de todos los comentarios asignados a una URL específica:
DELETE from wp_comments WHERE comment_author_url LIKE "%spamurl%" ;
4. Actualice los enlaces después de mudarse a un nuevo dominio
Los enlaces en WordPress son absolutos, no relativos, así que tendrás que cambiarlos todos cuando muevas tu sitio a un nuevo dominio. Hay complementos que harán esto por usted, o puede usar la siguiente consulta SQL:
UPDATE wp_posts SET post_content = REPLACE (post_content, '[old_domain]', '[new_domain]');
Es básicamente una función de búsqueda y reemplazo para todas las publicaciones en su sitio, por lo que también puede usarla para otros fines.
5. Convierte tus publicaciones de WordPress en páginas
A veces creas una publicación de WordPress y luego te das cuenta de que este es un recurso que probablemente sería mejor como página. Afortunadamente, es muy fácil de cambiar:
UPDATE wp_posts SET post_type="page" WHERE post_type="post";
También puedes convertir páginas en publicaciones:
UPDATE wp_posts SET post_type="post" WHERE post_type="page";
6. Cambia tu nombre de usuario de WordPress
No puede cambiar su nombre de usuario de WordPress desde el tablero, lo cual es un poco molesto. Afortunadamente, esto es simple con SQL. Debería considerar seriamente hacer esto si su nombre de usuario de administrador es «Admin» para fortalecer la seguridad de su sitio web.
UPDATE wp_users SET user_login = 'newusername' WHERE user_login = 'oldusername';
7. Elimina las correcciones de publicaciones
WordPress guarda automáticamente diferentes versiones de sus publicaciones a medida que las edita, pero pueden ocupar mucho espacio en su base de datos. Puede eliminarlos con la siguiente consulta:
DELETE a,b,c FROM wp_posts a LEFT JOIN wp_term_relationships b ON (a.ID = b.object_id) LEFT JOIN wp_postmeta c ON (a.ID = c.post_id) WHERE a.post_type="revision";
8. Deshabilitar comentarios en publicaciones antiguas
Los spammers a menudo atacan publicaciones antiguas. Puede deshabilitar los comentarios en todas las publicaciones publicadas antes de una fecha determinada con esta consulta (edite la fecha a su elección)
UPDATE wp_posts SET comment_status="closed" WHERE post_date < '2016-01-01' AND post_status="publish";
9. Cambia la URL de las imágenes de WordPress
Si ha movido su sitio de WordPress, debe cambiar todas las URL de las imágenes. También puede optar por colocar sus imágenes en otro lugar para ahorrar espacio en el servidor. Para cambiar las URL de las imágenes, utilice la siguiente consulta:
UPDATE wp_posts SET post_content = replace(post_content, 'Old URL', 'New URL');
10. Bloquear deshabilitar complementos
La mayoría de los problemas técnicos con el sitio de WordPress se pueden atribuir a un complemento malicioso. Si no puede ingresar a su panel de administración, primero intente deshabilitar todos los complementos de la base de datos, luego puede ingresar y habilitarlos nuevamente uno por uno.
UPDATE wp_options SET option_value="" WHERE option_name="active_plugins";
11. Deshabilitar comentarios en todas las publicaciones.
¿Estás sufriendo un ataque de spam? ¿O simplemente estás harto de las opiniones de los demás? Puede deshabilitar los comentarios para todas las publicaciones a la vez con esta consulta:
UPDATE wp_posts SET comment_status="closed" where post_type="post";
resumen
Conocer la base de datos de WordPress y comprender cómo funciona puede darle más poder sobre su propio sitio y ayudarlo a trabajar directamente con los datos de su sitio, evitando tener que instalar varios complementos.
Sin embargo, manipular la base de datos de un sitio web también puede ser peligroso si no sabe lo que está haciendo, por lo que es importante tener siempre una copia de seguridad antes de comenzar a realizar cambios en su base de datos.
De hecho, sugeriría crear un sitio de prueba con datos de muestra con los que pueda jugar para comprender mejor qué hacen estas diferentes consultas SQL antes de probarlas en su sitio en vivo. Puede usar el complemento Duplicator para crear una copia de su sitio web para realizar pruebas. Si ha probado los datos en su sitio de prueba y desea volver a colocarlos en una pestaña en blanco, hay un complemento que puede usar para restablecer su base de datos de WordPress a su estado predeterminado.