Captura de pantalla de phpMyAdmin

WordPress tiene plugins para todo lo que puedas imaginar. Sin embargo, hay veces en las que los plugins, o bien no ofrecen exactamente lo que necesitas, o bien lo que andas buscando es demasiado crítico como para confiar en un plugin poco conocido o sin comentarios de terceros. En muchos de estos casos, la forma más rápida de resolver el problema es ensuciándose las manos uno mismo modificando nuestra base de datos.

Hoy vamos a ver lo fácil que es convertir las entradas de WordPress en páginas y viceversa (convertir páginas de WordPress en entradas), ejecutando una sencilla sentencia SQL de actualización. Muchos principiantes no saben que tanto las entradas como las páginas comparten la misma tabla en la base de datos de WordPress: wp_posts. La única diferencia entre una entrada y una página es el valor que se almacena en la columna post_type de la tabla wp_posts. Las entradas tienen el valor post en post_type y las páginas el valor page.

Visto esto, convertir una entrada en una página es tan simple como actualizar el valor de la columna post_type:

UPDATE wp_posts SET post_type='page' WHERE post_type='post'

Mientras que para convertir las páginas en entradas la sentencia SQL es:

UPDATE wp_posts SET post_type='post' WHERE post_type='page'

Posiblemente no quieras convertir todas las entradas en páginas, sino solamente alguna de ellas. Asumiendo que conocemos el identificador de las entradas que queremos convertir en páginas, modificaremos ligeramente la condición de actualización de la sentencia SQL:

UPDATE wp_posts SET post_type='page' WHERE post_type='post' AND id=X

donde X es el identificador de la entrada a convertir en página. Alternativamente, podemos usar un patrón para seleccionar las entradas o páginas a convertir. Para este caso utilizamos el operador LIKE de SQL. Por ejemplo, si quieres transformar todas las páginas cuyo título empieza con la letra ‘A’, la instrucción quedaría así:

UPDATE wp_posts SET post_type='post' WHERE post_type='page' AND post_title LIKE 'A%'

Esta misma instrucción nos permite transformar entradas o páginas normales en tipos de entradas personalizados (custom post types, en inglés). Recuerda que si no tienes acceso a tu base de datos directamente o mediante phpMyAdmin, puedes probar a usar el arma secreta de los consultores WordPress: el plugin Adminer.

ADVERTENCIA: No creo que haga falta recordarte que antes de hacer cualquier modificación en tu base de datos de WordPress debes crear una copia de seguridad. Si cometiéramos cualquier error o sucediera algo fuera de nuestro control, disponer de una copia de seguridad te puede salvar la vida.

18 respuestas a «Cómo convertir entradas en páginas (y viceversa)»

  1. Avatar de Marta

    Hola, os consulto por esye asunto, he publicado una pagina que debia ser un post y no he podido seguir este tutorial.

    Podeis ayudarme?

    Saludos

    1. Avatar de Jordi Cabot

      Para ayudarte deberías dar más detalles acerca de qué parte del tutorial no has podido seguir, ya nos cuentas

  2. Avatar de raul

    Hola, gracias por compartir.
    Tengo un problema con una web de inmobiliaria que tengo en WordPress, y esque ya alcanzo los 1000 anuncios y cada vez se torna mas lenta la web hasta el punto que puede tardar en abrirse un minuto o más. Indagando he podido comprobar que se debe a la cantidad de anuncios y que, parece ser, es por el archivo wp_posts que alberga todas las entradas en forma de página. Mi pregunta es, si es posible fraccionar esa tabla de forma que no acceda a toda de golpe si no a partes de ella, por ejemplo por meses, asi no ha de realizar las consultas a la base de datos completa?. No se si formulo bien la pregunta esque no tengo experiencia en programación. Un abrazo.

    1. Avatar de Antonio Villegas

      1000 entradas no deberían ser un problema. He podido trabajar en webs que multiplicaban ese número fácilmente y el tiempo de carga era rápido. Prueba a usar un plugin de caché si no lo estás haciendo ya, o habla con tu hosting, ya que quizás necesitas invertir más en el servidor de tu web.

  3. Avatar de carlos

    Tenia un blog para pasar unas cuantas entradas a paginas y este tutorial me sirvio, hay plugins que hacen lo mismo pero la verdad casi no me gusta usarlos. gracias

    1. Avatar de Antonio Villegas

      Me alegro de que te haya sido de utilidad.

  4. Avatar de emiliano

    excelente, buen dato, antes que andar descargando e instalando plugins para todo!

    1. Avatar de Antonio Villegas

      Gracias por tus palabras, Emiliano. Nos encanta que te haya sido útil.

  5. Avatar de Marcos

    Gracias Antonio, muy claro como siempre, justo necesita evitar el uso de un plugin.

    1. Avatar de Antonio Villegas

      Me alegra saber que te ha sido útil. Gracias, Marcos.

  6. Avatar de Superviviente trabajando en casa

    Un día trasteando por WordPress encontré una función que permitía hacerlo y en el momento no tome nota fiándome de mi memoria y de que era muy fácil de localizar… ¡Craso error! Ahora solo recuerdo que era fácil, pero no recuerdo dónde se encontraba.

    Si no lo encuentro, recurriré a tus pasos. ¡Por lo menos ahora ya tengo alternativa a mi memoria!

    ¡Gracias! Un saludo

    1. Avatar de Antonio Villegas

      ¡Hola! Si el código no es lo tuyo siempre puedes usar un plugin para conseguir esto. Por ejemplo este, pero ten en cuenta que lleva mucho tiempo sin ser actualizado y quizás no funcione todo lo bien que debería.

      Un saludo.

  7. Avatar de clarisa
    clarisa

    gracias por la ayuda, pero no dices donde exactamente tengo que ir para hacer ese cambio, pues soy principiante 🙁

    1. Avatar de Antonio Villegas

      Hola Clarisa. Estos cambios (las instrucciones SQL de la entrada) los tienes que aplicar en tu base de datos. Para acceder a ella habitualmente tu proveedor de hosting debería proporcionarte acceso a phpMyAdmin (o similar). De todas formas, si eres principiante lo que puedes hacer es pedirle directamente al soporte técnico de tu proveedor de hosting que hagan ellos el cambio por ti.

  8. Avatar de Jaime Rojas
    Jaime Rojas

    Articulo viejito pero muy util.

    Me ayudo en la parte mas engorrosa de una reestructuracion general.

    El plugin es excelente, sobre todo cuando se trabaja con server pilot y vps. No lo conocía.

    Gracias, excelente post…!

    1. Avatar de David Aguilera

      ¡Muchas gracias, Jaime! Nos alegra saber que te fue útil 🙂

  9. Avatar de Esteban
    Esteban

    Gracias Antonio por la información, he estado buscando un tutorial sencillo de como hacer esto. Los plug-ins no siempre son la mejor opción ya que algunos te agregan código innecesario, afectando el performance del sitio.

    Saludos!

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

He leído y acepto la política de privacidad de Nelio Software

Tus datos personales se almacenarán en SiteGround y serán usados por Nelio Software con el único objetivo de publicar tu comentario aquí. Con el envío de este comentario, nos das el consentimiento expreso para ello. Escríbenos para acceder, rectificar, limitar o eliminar tus datos personales.