
🔍 Buscar y reemplazar en phpMyAdmin: cómo reemplazar texto y URLs en una base de datos de WordPress
💡 Resumen rápido:
- qué es buscar y reemplazar en phpMyAdmin y cuándo lo necesita;
- consulta SQL paso a paso para reemplazar texto en toda una base de datos de WordPress;
- cómo reemplazar en lote URLs antiguas por nuevas mediante phpMyAdmin;
- panorama de dos alternativas con plugins, Better Search Replace y Search & Replace.
Qué es buscar y reemplazar en phpMyAdmin y por qué lo necesita
Imagine que cambió su dominio, renovó su marca o actualizó la estructura de enlaces permanentes. En algún lugar profundo de la base de datos de WordPress, cientos de referencias antiguas permanecen en entradas, campos meta y ajustes del tema. ¿Abrir cada registro y corregirlo manualmente? En un sitio de cinco páginas, tal vez. En uno de doscientas páginas, es un día perdido.
phpMyAdmin es una interfaz web para administrar MySQL que viene incluida con cPanel en prácticamente cualquier alojamiento. Con ella, usted ejecuta una consulta SQL que encuentra y reemplaza una cadena especificada en todos los registros de la base de datos en una sola pasada. Sin plugins, sin código adicional, solo usted, su navegador y la consulta correcta.
Sin embargo, este método tiene una salvedad: un error de sintaxis puede afectar datos equivocados. Por eso desglosaremos las consultas pieza por pieza, y al final le mostraremos un par de plugins que eliminan el riesgo manual y ofrecen una vista previa antes del reemplazo.
Cómo buscar y reemplazar texto mediante phpMyAdmin
El escenario más común es reemplazar una palabra o frase en todas las entradas a la vez. Por ejemplo, un nombre antiguo de empresa por uno nuevo, un término obsoleto o un correo electrónico roto. Solo necesita una consulta UPDATE en phpMyAdmin.
Paso 1: acceda a phpMyAdmin a través de cPanel
Abra el cPanel de su alojamiento, localice la sección «Bases de datos» y haga clic en el icono de phpMyAdmin. Inicie sesión (normalmente el nombre de usuario y la contraseña son los mismos que para cPanel).
Paso 2: seleccione la base de datos de su sitio
Tras iniciar sesión, aparece una lista de bases de datos a la izquierda. Haga clic en la que pertenece a su sitio WordPress. Si no recuerda el nombre, revise el archivo wp-config.php: la línea define('DB_NAME', 'database_name').
Paso 3: vaya a la pestaña SQL
En la barra de herramientas superior, haga clic en el botón SQL para abrir la ventana de entrada de consultas.

Paso 4: introduzca la consulta SQL para reemplazar texto
La sintaxis básica tiene este aspecto:
1 UPDATE table_name SET field_name = 2 REPLACE(field_name, 'search_term', 'replacement_term');
Para reemplazar texto en todas las entradas de WordPress, la consulta es:
1 UPDATE wp_posts SET post_content = 2 REPLACE(post_content, 'old text', 'new text');
Desglosándola: UPDATE wp_posts apunta a la tabla de entradas; SET post_content modifica el campo post_content; REPLACE(post_content, 'A', 'B') es una función que encuentra la subcadena A y la reemplaza por B. Importante: el prefijo de tabla podría no ser wp_; verifique el valor de $table_prefix en wp-config.php.
⚠️ Antes de ejecutar la consulta, asegúrese de hacer una copia de seguridad de su base de datos. En cPanel, use la sección Copia de seguridad, o utilice un plugin como UpdraftPlus. Las consultas SQL son irreversibles; no hay botón «deshacer».
Paso 5: ejecute la consulta
Haga clic en el botón «Go» en la esquina inferior derecha. phpMyAdmin ejecutará la consulta y mostrará un mensaje con el número de filas afectadas (por ejemplo, «Rows affected: 47»). Esto significa que 47 registros contenían el texto buscado y fueron actualizados.

Listo. Navegue por su sitio y revise algunas páginas; el texto antiguo debería estar reemplazado.
Cómo reemplazar URLs en una base de datos de WordPress mediante phpMyAdmin
Reemplazar URLs es más complejo que reemplazar texto porque las direcciones no se almacenan en una sola tabla, sino dispersas en varias. Aquí le indicamos dónde buscar:

- Entradas y páginas: campo
post_contenten la tablawp_posts - Meta campos (campos personalizados):
meta_valueenwp_postmeta - Ajustes de temas y plugins:
option_valueenwp_options - Comentarios:
comment_contentenwp_comments - Menús (gestor de enlaces heredado):
link_urlylink_imageenwp_links - Metadatos de usuario:
meta_valueenwp_usermeta
Para cubrir todo de una vez, ejecute este conjunto de consultas (copie una a la vez y haga clic en Continuar después de cada una):
1 UPDATE wp_options SET option_value = 2 REPLACE(option_value, 'http://old-domain.com', 'https://new-domain.com') 3 WHERE option_name = 'home' OR option_name = 'siteurl'; 4 5 UPDATE wp_posts SET post_content = 6 REPLACE(post_content, 'http://old-domain.com', 'https://new-domain.com'); 7 8 UPDATE wp_postmeta SET meta_value = 9 REPLACE(meta_value, 'http://old-domain.com', 'https://new-domain.com'); 10 11 UPDATE wp_comments SET comment_content = 12 REPLACE(comment_content, 'http://old-domain.com', 'https://new-domain.com'); 13 14 UPDATE wp_links SET link_url = 15 REPLACE(link_url, 'http://old-domain.com', 'https://new-domain.com'); 16 17 UPDATE wp_usermeta SET meta_value = 18 REPLACE(meta_value, 'http://old-domain.com', 'https://new-domain.com');
⚠️ Una vez más: antes de ejecutar, cree una copia de seguridad completa. Si su sitio utiliza datos serializados (la mayoría de los temas y plugins lo hacen), un simple reemplazo de texto puede romper la estructura. En ese caso, es mejor usar los plugins de la siguiente sección, que manejan la serialización correctamente.
Plugins para buscar y reemplazar en WordPress
El método manual con phpMyAdmin es rápido pero inseguro para principiantes. Los plugins resuelven dos problemas principales: ofrecen una vista previa antes del reemplazo (prueba en seco) y manejan correctamente los datos serializados. Veamos dos opciones probadas.
Better Search Replace

Better Search Replace es el plugin gratuito más popular para esta tarea, con más de un millón de instalaciones activas. Está construido sobre el script de código abierto interconnect/it Search Replace DB y utiliza funciones nativas de WordPress en lugar de consultas SQL directas.
Cómo usar el plugin:
- Instálelo y actívelo desde «Plugins → Añadir nuevo».
- Vaya a «Herramientas → Better Search Replace».
- En el campo «Buscar», introduzca el texto o la URL a encontrar.
- En el campo «Reemplazar con», introduzca el reemplazo.
- En el bloque «Seleccionar tablas», elija las tablas requeridas (o todas ellas).
- Active «Ejecutar como prueba en seco» para una ejecución de prueba sin reemplazo real. El plugin mostrará cuántas coincidencias se encontraron y en qué tablas.

Después de revisar, desactive «Prueba en seco» y ejecute el reemplazo de nuevo, esta vez guardando los cambios reales.
Ventajas: maneja correctamente los datos serializados, por lo que las URLs no se romperán después del reemplazo. Desventajas: no crea una copia de seguridad automática antes del reemplazo (hágalo usted mismo con UpdraftPlus o similar).
Precio: gratuito.
🔗 Better Search Replace en WordPress.org
Search & Replace

Search & Replace del equipo WP Media es una alternativa con copia de seguridad integrada. Antes del reemplazo, el plugin puede generar un volcado de la base de datos y guardarlo. Si algo sale mal, usted restaura desde la copia de seguridad en dos clics.
Funciones adicionales:
- reemplazo de dominio/URL en un clic (pestaña separada «Replace Domain / URL»);
- soporte CSV para reemplazo por lotes (formato: «término de búsqueda; término de reemplazo»);
- cambio de prefijo de tabla;
- soporte multisitio.
El plugin tiene más de 100.000 instalaciones activas y una valoración de 4,3. Oficialmente no se ha probado con las últimas versiones de WordPress, pero las reseñas de usuarios confirman un funcionamiento estable en WP 6.8 con PHP 8.2.
Contras: la interfaz es menos intuitiva que Better Search Replace, con una curva de aprendizaje ligeramente mayor.
Precio: gratuito.
🔗 Search & Replace en WordPress.org
¿Qué elegir: plugin o phpMyAdmin?
Guía rápida: si va a reemplazar 1 o 2 palabras en el texto de las entradas y tiene soltura con la sintaxis SQL, phpMyAdmin es más rápido. Si va a cambiar dominios, trabajar con datos serializados o no quiere tocar la base de datos manualmente, instale Better Search Replace y ejecute una simulación. Si necesita copia de seguridad integrada y reemplazo por lotes, use Search & Replace.
⁉️🤔 Preguntas frecuentes
¿Puedo deshacer un reemplazo después de ejecutar una consulta SQL?
No, una consulta SQL en phpMyAdmin es irreversible. Por eso mismo es obligatorio hacer una copia de seguridad completa de la base de datos antes de cualquier reemplazo. Créela desde cPanel (Backup → Download MySQL Database) o con un plugin como UpdraftPlus. Con una copia de seguridad, siempre puede revertir la base de datos a su estado anterior.
¿Qué son los datos serializados y por qué un simple reemplazo de URL los rompe?
La serialización es una forma de empaquetar estructuras complejas (arrays, objetos) en una cadena de texto para almacenarlas en la base de datos. WordPress la usa para ajustes de temas, datos de plugins y widgets. La cadena
s:26:"http://old-domain.com"significa «una cadena de 26 caracteres». Si reemplaza el dominio por uno más corto o más largo, la longitud ens:26ya no coincidirá con el contenido real y WordPress no podrá leer los datos. Los plugins (Better Search Replace, Search & Replace) recalculan la longitud automáticamente. Un reemplazo SQL directo no lo hace.
¿Tengo que usar phpMyAdmin o puedo usar WP-CLI?
WP-CLI es una alternativa excelente si tiene acceso SSH. El comando
wp search-replace 'old-domain' 'new-domain'hace lo mismo pero con manejo automático de la serialización. De hecho, es más seguro que phpMyAdmin porque WP-CLI trabaja a través de la API de WordPress en lugar de directamente con MySQL. Sin embargo, no todos los proveedores de hosting ofrecen acceso SSH en los planes más económicos, mientras que phpMyAdmin está disponible en casi todos.
¿Puedo reemplazar solo en entradas específicas en lugar de en toda la base de datos?
Sí, añada una condición
WHEREa la consulta SQL. Por ejemplo, para reemplazar texto solo en entradas de una categoría específica: primero encuentre el ID de la categoría, luego:
1 > UPDATE wp_posts SET post_content = 2 > REPLACE(post_content, 'old', 'new') 3 > WHERE ID IN ( 4 > SELECT object_id FROM wp_term_relationships WHERE term_taxonomy_id = 12 5 > ); 6 >
Pero es mucho más fácil hacer un reemplazo completo con una simulación en Better Search Replace; el plugin mostrará la tabla y el número de coincidencias, y usted puede desmarcar manualmente las tablas innecesarias.
¿Qué debo hacer si el sitio deja de cargar después de un reemplazo de URL?
Primero, no entre en pánico. Segundo, restaure la base de datos desde su copia de seguridad (sí hizo una copia de seguridad, ¿verdad?). Tercero, la causa probable son datos serializados rotos. Use el plugin Better Search Replace, que está diseñado específicamente para el reemplazo de dominios y maneja la serialización correctamente. Después de restaurar la base de datos, ejecute el reemplazo a través de él.
Qué método de búsqueda y reemplazo elegir: resumen final
La elección depende de tres factores: qué está cambiando, qué tan grande es el sitio y su nivel de comodidad con SQL.
- Texto en unas pocas entradas → phpMyAdmin con
UPDATE wp_posts. Rápido, pero sin vista previa. - Cambio completo de dominio o migración a HTTPS → Better Search Replace. La simulación muestra todas las filas afectadas antes del reemplazo real, y el manejo integrado de serialización evita datos rotos. Este es el estándar de oro para migraciones.
- Necesita copia de seguridad integrada → Search & Replace. Crea un volcado de la base de datos antes del reemplazo y puede restaurarlo.
La regla de oro sigue siendo la misma: copia de seguridad, copia de seguridad y otra copia de seguridad antes de tocar la base de datos de cualquier manera. Un solo comando UPDATE sin copia de seguridad puede tumbar su sitio, pero con una copia de seguridad es solo una herramienta de trabajo que ahorra horas de trabajo rutinario.



