UA-51298262-10 Skip to main content
WordPress

Consultas SQL que nos ahorrarán tiempo en WordPress

By junio 29, 2020diciembre 2nd, 2022No Comments

En este artículo de Ayuda Hosting, les mostraremos algunas consultas SQL que nos ahorrarán tiempo en WordPress. Si somos propietarios de un sitio web de WordPress, hay muchas cosas que cuidar.

Consultas SQL que nos ahorrarán tiempo en WordPress

Entre las tareas que debemos realizar con frecuencia están el actualizar constantemente el contenido de nuestro blog. Además, agregar nuevos productos, cambiar los precios de los artículos, y por supuesto, la actualización regular de plugins. Adicionalmente, brindar acceso a un desarrollador y algunas otras tareas como parte de la rutina diaria de WordPress.

A veces, si necesitamos ajustar la configuración, encontraremos un tutorial de una página web larga con muchas instrucciones para realizar una sola acción. Pero, ¿qué pasaría si supiéramos que la mayoría de estos cambios se pueden realizar con una simple consulta SQL? Este es un comando que puede ejecutarse en el menú del administrador de la base de datos de nuestro WordPress.

Consultas SQL que nos ahorrarán tiempo en WordPress

Como generalmente estamos ocupados y ahorrar tiempo es una prioridad, estas son las consultas básicas de SQL que nos ayudarán a lograr excelentes resultados en solo unos minutos.

Pasos preliminares

Cuando existe más de un sitio web en nuestra cuenta de hosting, antes de ejecutar consultas SQL, debemos asegurarnos de que estamos modificando la base de datos correcta. Podemos encontrar el nombre de la base de datos asignado a una instalación específica de WordPress en nuestro archivo wp-config.php en la cadena:

define ('DB_NAME', 'yourdbname')

Consultas SQL que nos ahorrarán tiempo en WordPress

Además, prestemos atención al prefijo de la tabla, ya que necesitaremos especificarlo una vez que ejecutemos los comandos SQL. Se encuentra en el mismo archivo en la parte inferior de la configuración de la página.

Consultas SQL que nos ahorrarán tiempo en WordPress

En el ejemplo anterior, el nombre de la base de datos es _wp622. El prefijo de la tabla es wpc7_. Ahora, cuando lo sepamos, nos vamos al Administrador de la base de datos. La mayoría de los paneles de control usan PHPMyAdmin para la gestión de bases de datos.

Consultas SQL que nos ahorrarán tiempo en WordPress

Una vez que estemos allí, buscamos el nombre de nuestra base de datos en la lista y hacemos clic en él:

Consultas SQL que nos ahorrarán tiempo en WordPress

Antes de realizar cualquier cambio, debemos asegurarnos de crear una copia de seguridad para esta base de datos. Esto, con el fin de poder restaurarla rápidamente en caso de que algo salga mal.

Cubrimos cómo hacer una copia de seguridad de WordPress en detalle en nuestra guía general de copia de seguridad. Sin embargo, para obtener un recorrido rápido, elegimos la opción Exportar. Seguidamente, elegimos el método y el formato de acuerdo con nuestras necesidades y presionamos en Ir. En este punto hemos establecido todas las opciones predeterminadas:

Consultas SQL que nos ahorrarán tiempo en WordPress

Una vez hecho esto, podemos continuar con seguridad. Presionamos en el menú SQL y comenzamos:

Consultas SQL que nos ahorrarán tiempo en WordPress

Reemplazar URL

Si planeamos actualizar la URL de nuestro sitio web agregando el certificado SSL a nuestro sitio web o haciendo otras modificaciones, debemos asegurarnos de usar el siguiente comando:

UPDATE wp_options SET option_value = replace(option_value, 'http://www.oldurlofthewebsite.com', 
'http://www.newurlofthewebsite.com') WHERE option_name = 'home' OR option_name = 'siteurl';

Digamos que queremos que nuestra URL sea https//: y el nombre de dominio es example.com. En este caso, necesitamos modificar el nombre de la tabla wp_options y dejar la misma URL:

UPDATE wpc7_options SET option_value = replace(option_value, 'http://www.example.com', 
'https://www.example.com') WHERE option_name = 'home' OR option_name = 'siteurl';

Consultas SQL que nos ahorrarán tiempo en WordPress

Después de esto, esperamos un mensaje de éxito.

Consultas SQL que nos ahorrarán tiempo en WordPress

¿Por qué es tan importante verlo? Si presionamos en Ir pero existen algunos errores en la consulta, el sistema no podrá cumplir con la solicitud y recibiremos errores que significan que la ejecución falló. El error tendrá el siguiente aspecto e indicará la razón por la cual el proceso falló.

Consultas SQL que nos ahorrarán tiempo en WordPress

Debemos tener en cuenta que este comando es básico y reemplazará solo la URL principal de nuestro sitio web. Si planeamos cambiar el nombre de dominio de nuestro sitio web de example.com a test.net, debemos modificarlo, incluidas todas las tablas donde aparece la URL de nuestro sitio web, como wp-posts y wp-postmeta. También, se ocupará de las tablas con filas que contienen URL generadas por plugins, por ejemplo, WooCommerce.

Para hacer eso, necesitaremos al menos capacitación básica en SQL. Una opción más, sería abrir la base de datos que exportamos en cualquier editor de texto y con Ctrl + H reemplazar todas las menciones de nuestro antiguo dominio por el nuevo.

Si esto suena demasiado complicado, existe una variedad de otras herramientas que ayudan a automatizar este proceso. Esta sería la secuencia de comandos de búsqueda y reemplazo de la base de datos de interconexión/it, o el plugin de WordPress Better Search & Replace basado en la misma secuencia de comandos. Esto, mientras carga el archivo en nuestra carpeta del sitio web para el sitio de trabajo y abrirlo en un navegador.

Crear nuevo usuario administrador

Si necesitamos agregar un nuevo usuario con atributos de administrador a nuestra instalación, debemos usar el siguiente comando y modificarlo según nuestras preferencias:

INSERT INTO `wp_users` (`user_login`, `user_pass`, `user_nicename`, `user_email`, `user_status`)
VALUES ('yourlogin', MD5('yourpassword'), 'firstname lastname', 'email@example.com', '0');

INSERT INTO `wp_usermeta` (`umeta_id`, `user_id`, `meta_key`, `meta_value`)
VALUES (NULL, (Select max(id) FROM wp_users),

'wp_capabilities', 'a:1:{s:13:"administrator";s:1:"1";}');

INSERT INTO `wp_usermeta` (`umeta_id`, `user_id`, `meta_key`, `meta_value`)
VALUES (NULL, (Select max(id) FROM wp_users), 'wp_user_level', '10');

Debemos tener en cuenta que tenemos que modificar las tablas y los valores de inicio de sesión de acuerdo con el nombre de usuario y las bases de datos que deseamos.

Si queremos crear un usuario mydeveloper con la contraseña mypassword, el nombre de nuestro desarrollador es John Doe y el correo electrónico es test@test.com. Entonces nuestra consulta se verá de la siguiente manera:

INSERT INTO `wpc7_users` (`user_login`, `user_pass`, `user_nicename`, `user_email`, `user_status`)
VALUES ('Mydev', MD5('mypassword'), 'John Doe', 'test@test.com', '0');

INSERT INTO `wpc7_usermeta` (`umeta_id`, `user_id`, `meta_key`, `meta_value`)
VALUES (NULL, (Select max(id) FROM wp_users),

'wp_capabilities', 'a:1:{s:13:"administrator";s:1:"1";}');

INSERT INTO `wpc7_usermeta` (`umeta_id`, `user_id`, `meta_key`, `meta_value`)
VALUES (NULL, (Select max(id) FROM wpc7_users), 'wp_user_level', '10'

Consultas SQL que nos ahorrarán tiempo en WordPress

También, debemos tener en cuenta que no necesitamos modificar los nombres de las filas. Es decir, modificar wp_user_level o jugar con los números 0, 10, 13 ya que significan el rol del usuario y los derechos correspondientes. Una vez hecho esto, presionamos Ir.

Seguidamente, deberá aparecer el indicador de resultado exitoso como el siguiente:

Consultas SQL que nos ahorrarán tiempo en WordPress

Cambiar el nombre de usuario de inicio de sesión como administrador

Para cambiar un nombre de usuario de inicio de sesión, regresamos a la pestaña MySQL y ejecutamos el siguiente comando:

UPDATE wp_users SET user_login = 'newlogin' WHERE user_login = 'admin';

Supongamos que nuestro nombre de usuario predeterminado es mydeveloper, el que hemos creado anteriormente y deseamos establecer un usuario seguro en lugar de él. En nuestro caso particular, ejecutamos el siguiente comando, ya que también tenemos el prefijo predeterminado wp7c_:

UPDATE wpc7_users_users SET user_login = 'secureduser' WHERE user_login = 'mydeveloper';

Consultas SQL que nos ahorrarán tiempo en WordPress

La salida exitosa se ve de la siguiente manera:

Consultas SQL que nos ahorrarán tiempo en WordPress

Cambiar la contraseña del administrador

Siguiendo las reglas de seguridad de los cambios regulares de contraseña, es posible que también deseemos cambiar la contraseña de nuestro usuario seguro. Aquí está la consulta para ello:

UPDATE wp_users SET user_pass = MD5( 'new_password' ) WHERE user_login = 'youruser';

Para este comando de cambio de contraseña en particular, nuestro comando es el siguiente:

UPDATE wpc7_users SET user_pass = MD5( '$tR0ngP@s$w03D' ) WHERE user_login = 'secureduser';

Consultas SQL que nos ahorrarán tiempo en WordPress

Presionamos Ir y esperamos el mensaje de éxito:

Eliminar spam

Para los usuarios que publican mucho contenido y dejan los comentarios abiertos para la interacción, el problema con los comentarios de spam puede ser realmente tedioso. Si bien podemos filtrar los comentarios por aprobación manual, es probable que deseemos encontrar una manera de eliminar rápidamente todo lo que no hayamos aprobado. Así es cómo lo podemos hacer:

DELETE FROM wp_comments WHERE wp_comments.comment_approved = 'spam';

Cuando lo personalizamos para el caso particular que estamos discutiendo:

DELETE FROM wpc7_comments WHERE wpc7_comments.comment_approved = 'spam';

Nota: El prefijo debe modificarse en ambos lugares donde se cumple, ya que wp_comments.comment_approved es el campo separado en la tabla.

Aquí está la salida exitosa:

Eliminar todos los comentarios de publicaciones no aprobadas

En algún momento, podemos darnos cuenta de que estamos cansados de filtrar y leer los comentarios de los artículos antes de tomar la decisión final de publicarlos, por lo que desearemos eliminarlos. Hay un comando para eso:

DELETE FROM wp_comments WHERE comment_approved = 0

Debemos tener en cuenta que la sección comment_approved no necesita la modificación ya que esta pestaña representa la función predeterminada en la tabla que no es modificable.

El comando modificado tiene el siguiente aspecto:

DELETE FROM wpc7_comments WHERE comment_approved = 0

Una vez hecho esto, podemos ver el resultado habitual de los comandos ejecutados con éxito:

Conclusión

Si bien puede parecer que seguir las instrucciones nos llevará más tiempo que hacer las cosas manualmente, pues no es así. Cuanto más grande sea nuestro sitio web, más tiempo tendremos que emplear en él. Una sola acción se realiza por separado para 10 publicaciones y terminamos con 10 veces más tiempo dedicado a la ejecución.

De hecho, ahorraremos mucho de nuestro valioso tiempo ejecutando estos comandos. Así podemos usar este tiempo en cosas más importantes como la planificación del contenido o la búsqueda de ideas para nuestro sitio web.

Esperamos que este artículo sobre algunas consultas SQL que nos ahorrarán tiempo en WordPress, les haya resultado útil. Más información sobre este y otros temas en Ayuda Hosting.

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información. ACEPTAR

Aviso de cookies