Tutoriales de WordPress de Confianza, cuando más los necesitas.
Guía para Principiantes de WordPress
Copa WPB
25 Millones+
Sitios web que usan nuestros plugins
16+
Años de experiencia en WordPress
3000+
Tutoriales de WordPress de expertos

Cómo excluir la última publicación del bucle de publicaciones de WordPress

Cuando ayudamos a los usuarios a configurar sus blogs de WordPress, a menudo nos preguntan sobre la personalización del diseño, especialmente cómo hacer que la última publicación destaque realmente.

A veces, no quieres que esa publicación más reciente simplemente se mezcle con el resto del feed del blog. Es posible que tengas un diseño especial en mente o que necesites que aparezca en una ubicación diferente por completo.

Ahí es donde entra la exclusión de la última publicación del bucle de publicaciones de WordPress. Esto te da la flexibilidad de mostrar ese contenido reciente como quieras. En esta guía, te mostraremos dos formas de excluir la última publicación del bucle de publicaciones de WordPress.

Cómo excluir la última publicación del bucle de publicaciones de WordPress

¿Por qué excluir la última publicación del bucle de publicaciones de WordPress?

Por defecto, WordPress muestra tus publicaciones de blog a los visitantes en orden cronológico inverso, por lo que las publicaciones más nuevas aparecen primero. Sin embargo, es posible que desees cambiar cómo se ve la última publicación en tu página de inicio personalizada o página de archivo de WordPress.

Al excluir la última publicación del bucle de publicaciones de WordPress, puedes mostrar ese contenido en una ubicación diferente e incluso agregar tu propio estilo personalizado.

Dicho esto, veamos cómo puedes ocultar la última publicación del blog excluyéndola del bucle de publicaciones de WordPress. Simplemente usa los enlaces rápidos a continuación para saltar directamente al método que deseas usar:

La forma más fácil de excluir la última publicación del bucle de publicaciones es agregando código a tu sitio web de WordPress.

Algunas guías te dirán que edites los archivos del tema manualmente, pero esto puede causar errores comunes de WordPress e incluso puede romper completamente tu sitio web.

Por esa razón, recomendamos usar WPCode. Es el mejor plugin de fragmentos de código que facilita la adición de código personalizado en WordPress sin poner en riesgo tu sitio.

Primero, necesitarás instalar y activar el plugin gratuito WPCode. Para más información, consulta nuestra guía paso a paso sobre cómo instalar un plugin de WordPress.

Una vez que el plugin esté activado, ve a Fragmentos de código » + Agregar fragmento.

Añadir fragmentos de código personalizados a WordPress

Aquí, verás todos los fragmentos prefabricados que puedes agregar a tu sitio. Estos incluyen un fragmento que te permite deshabilitar completamente los comentarios, subir tipos de archivo que WordPress normalmente no admite, deshabilitar páginas de adjuntos, y mucho más.

Ahora puedes pasar el mouse sobre la opción 'Agregar tu código personalizado (Nuevo fragmento)' y hacer clic en el botón '+ Agregar fragmento personalizado' cuando aparezca.

Haz clic en el botón Agregar fragmento personalizado

A continuación, elige 'Fragmento de PHP' como tipo de código de la lista de opciones que se muestran en la pantalla.

Seleccionar fragmento de PHP como tipo de código

En la siguiente página, escribe un título para el fragmento de código. Esto es solo para tu referencia, así que puedes usar lo que quieras.

Excluir la última publicación del bucle de publicaciones de WordPress

Hecho eso, simplemente pega lo siguiente en el cuadro 'Vista previa del código':

<?php
function wpsites_exclude_latest_post( $query ) {
	if ( $query->is_home() && $query->is_main_query() ) {
		$query->set( 'offset', '1' );
	}
}

add_action( 'pre_get_posts', 'wpsites_exclude_latest_post', 1 );

Después de eso, desplázate hacia abajo en la página hasta la sección 'Inserción'.

Si no está seleccionado, elige 'Inserción automática' y 'Ejecutar en todas partes'.

Insertar código automáticamente en un sitio web de WordPress

Finalmente, desplázate hasta la parte superior de la pantalla y haz clic en el control deslizante 'Inactivo' para que muestre 'Activo'.

Luego, simplemente haz clic en el botón ‘Guardar fragmento’ o ‘Actualizar’ para que el fragmento de código esté activo.

Excluir la última publicación del bucle de publicaciones de WordPress usando WPCode

Ahora, si visitas tu sitio web de WordPress, entonces la última entrada del blog estará oculta.

Método 2: Editando archivos del tema de WordPress (No se requiere plugin)

Notas: Este tutorial solo funcionará con temas de WordPress clásicos, ya que los temas de bloques tienen un conjunto diferente de archivos de tema. Si usas un tema de bloques, te sugerimos usar el primer método.

También te recomendamos hacer una copia de seguridad de tu sitio web primero y/o usar un entorno de staging para prevenir errores al seguir este método.

Otra forma de excluir la última publicación del bucle de publicaciones de WordPress es agregando código a los archivos de tu tema de WordPress.

Esto logra un resultado similar al código anterior, pero necesitarás agregarlo directamente al bucle de WordPress donde quieras que se muestre.

Por ejemplo, si deseas cambiar el bucle de publicaciones en todo tu sitio web, deberás agregar el código a tu archivo index.php.

Solo ten en cuenta que agregar código directamente a tus archivos de WordPress puede causar problemas con la paginación en tu blog de WordPress.

Primero, necesitas abrir el administrador de archivos de tu proveedor de hosting de WordPress o conectar tu sitio web con un cliente FTP.

Para este tutorial, usaremos el administrador de archivos de Bluehost, ya que el proceso es mucho más fácil que usar un FTP. Dicho esto, los pasos son más o menos los mismos, independientemente de si usas un FTP o un host web diferente.

Si eres usuario de Bluehost, inicia sesión en el panel de control de tu cuenta de hosting y navega a la pestaña 'Websites'. Luego, haz clic en 'Settings' en el sitio web que deseas editar.

Configuración del sitio de Bluehost

Ahora, ve a la sección Quick Links.

Luego, haz clic en el botón 'File Manager'. Bluehost también te muestra el directorio raíz de tu sitio web si lo necesitas.

Acceder al administrador de archivos de un sitio web en Bluehost

Una vez que estés dentro del administrador de archivos, necesitas localizar el archivo que deseas editar. Digamos que quieres agregar el código a index.php, entonces lo encontrarás en la carpeta de tu tema actual, que está dentro de public_html/wp-content.

Una vez allí, simplemente haz clic derecho en el archivo index.php y selecciona 'Editar'.

Abrir el archivo index.php en el administrador de archivos de Bluehost

Ahora, necesitarás copiar el siguiente código y agregarlo a tu bucle de WordPress:

query_posts('posts_per_page=6&offset=1');

Este código le dice al bucle que solo muestre 5 publicaciones después de la publicación más reciente.

Necesitarás agregar el código directamente encima de tu bucle de WordPress para que se vea similar al fragmento de código a continuación:

<?php
query_posts('posts_per_page=6&offset=1');
if ( have_posts() ) {

	// Load posts loop.
	while ( have_posts() ) {
		the_post();

		get_template_part( 'template-parts/content/content', get_theme_mod( 'display_excerpt_or_full_post', 'excerpt' ) );
	}

	// Previous/next page navigation.
	twenty_twenty_one_the_posts_navigation();

} else {

	// If no content, include the "No posts found" template.
	get_template_part( 'template-parts/content/content-none' );

}

Así es como se ve nuestro código en el administrador de archivos de Bluehost:

Añadir código para excluir la última publicación en el administrador de archivos de Bluehost

Una vez que hayas agregado el código, simplemente haz clic en el botón 'Guardar Cambios'.

Luego, procede a previsualizar tu sitio web de WordPress.

Aprende más consejos y trucos para administrar tus publicaciones de WordPress

¿Quieres optimizar aún más tu blog de WordPress? Consulta estas guías:

Esperamos que este artículo te haya ayudado a aprender cómo excluir la última publicación del bucle de WordPress. También te puede interesar nuestra guía sobre cómo agregar publicaciones y páginas en masa en WordPress y nuestras selecciones expertas de los mejores plugins de publicaciones relacionadas para WordPress.

Si te gustó este artículo, suscríbete a nuestro canal de YouTube para obtener tutoriales en video de WordPress. También puedes encontrarnos en Twitter y Facebook.

Descargo de responsabilidad: Nuestro contenido es compatible con el lector. Esto significa que si haces clic en algunos de nuestros enlaces, podemos ganar una comisión. Consulta cómo se financia WPBeginner, por qué es importante y cómo puedes apoyarnos. Aquí está nuestro proceso editorial.

El Kit de herramientas definitivo para WordPress

Obtén acceso GRATUITO a nuestro kit de herramientas: ¡una colección de productos y recursos relacionados con WordPress que todo profesional debería tener!

Interacciones del lector

41 CommentsLeave a Reply

  1. ¡Hola a todos, gracias por este artículo! Quiero implementarlo, pero cada vez que lo intento, tengo un problema extraño: las entradas se verían exactamente como la página principal, mostrando una lista de publicaciones recientes en lugar de la publicación en sí. Mi código es ligeramente diferente, ya que es un SMTheme. Cualquier ayuda será muy apreciada. PD: Disculpen por publicar dos veces, pero el código se imprimió mal. Aquí está:

  2. La solución funciona bien, gracias. Pero la paginación se rompió después de aplicar este código. Lo he intentado pero no he podido hacer que funcione con la paginación correcta. ¿Alguna solución para la paginación?

  3. He usado dos plugins. Uno es “Recent facebook post” para mostrar las publicaciones recientes en WordPress y “Facebook publish page” para publicar mis publicaciones de WordPress en Facebook. Ahora quiero excluir las publicaciones recientes de Facebook que ya se publicaron desde mis publicaciones de WordPress.

    ¿Cómo puedo hacerlo?

    • Para eso, tu plugin que publica contenido de tu página de Facebook debería tener una verificación para ver si una publicación ya se publicó desde WordPress a Facebook. No recomendamos a los usuarios que editen directamente los archivos del plugin. Sin embargo, si te sientes cómodo editando archivos php, puedes bifurcar el plugin como un nuevo plugin y luego agregar el código para lograr esto.

      Administrador

  4. Mmm, cuando intenté este código en un bucle de página de categoría, no pudo mantener las publicaciones solo para esa categoría, sino que actuó como si fuera el bucle de la página principal y mostró todas las publicaciones.

  5. hola, solo tengo una pregunta, cuando hago esto, la paginación ya no funciona, ¿cómo puedo arreglar esto?

    ¡gracias, aparte de eso, funciona perfectamente!

    ¡saludos!

  6. ¿Hay alguna forma de omitir una publicación de una categoría?

    Por ejemplo, quiero mostrar todas las publicaciones excepto la última publicación de la categoría x

  7. “query_posts(‘posts_per_page=6&offset=1’);” this is not worked for me , while i am using the WP-PageNavi plugin for page navigation. :(

  8. Thanks for the info. Worked well :) Though, I’m encountering another issue for another site I’m currently doing. Is there a way to exclude from the loop only the latest post of a particular category?

    La cosa es que tengo un blog que publica podcasts. La página principal destaca el podcast más reciente – las entradas se publican bajo la categoría: Podcast – a través de su propio estilo. Al mismo tiempo, la página principal también muestra las últimas 5 entradas más recientes, de las cuales pueden incluir entradas bajo la categoría “podcast”. Simplemente no quiero mostrar en el bucle la entrada más reciente publicada bajo “Podcast” simplemente porque ya está destacada con su propio estilo. Espero que puedas ayudarme. ¡Gracias!

      • Una de mis páginas muestra primero la entrada más reciente o actual que el usuario está viendo.

        La entrada actual es llamada por el bucle.

        Debajo de esta entrada quiero mostrar los extractos de otras entradas anteriores sin mostrar la entrada actual en esta lista.

        Los extractos de entradas anteriores se llaman con query_posts:

        query(‘showposts=3&cat=5’);
        while($previousPosts->have_posts()) : $previousPosts->the_post();
        ?>

        Como puedes ver, llamo 3 publicaciones (extractos) de la categoría 5, lo que muestra tres publicaciones de la categoría Noticias. Esto parece estar bien, pero dentro de estos 3 extractos de publicaciones, la publicación actual que se llama en el bucle también está en esta lista.
        ¿Sabes alguna forma de excluir la publicación actual dentro de esta lista?

        ¡Gracias de nuevo!

        • ¡Gracias de nuevo por la pronta respuesta!
          Sin embargo, intenté el offset=1 en la consulta, lo único es que cuando presionas una publicación anterior, ves la publicación anterior en el bucle principal, dentro de los extractos de la lista se excluye la publicación más reciente, pero la publicación anterior que ahora es la publicación actual todavía está en la lista de extractos.

          ¿Alguna idea de cómo excluir no la más reciente, sino la actual?

          Thanks so far already :)

        • Envíanos el enlace en vivo del sitio por correo electrónico, para que podamos ver exactamente qué está pasando. Usa el formulario de contacto para enviar el correo electrónico.

  9. Thank you so much for this piece as i was looking for a way to exclude 4 latest posts form my home page and i got answer by this articles and i have replaced (query_posts(‘posts_per_page=6&offset=1’);) by query_posts(‘posts_per_page=6&offset=3’); and its done :)

    • Ese es un proceso de varios pasos. Primero, necesitarías tener una plantilla de página personalizada. Segundo, necesitarías crear esa página personalizada, tu página principal. Luego, ejecutarías una consulta en esa plantilla personalizada que muestre solo las publicaciones fijadas.

      Administrador

Deja una respuesta

Gracias por elegir dejar un comentario. Ten en cuenta que todos los comentarios son moderados de acuerdo con nuestra política de comentarios, y tu dirección de correo electrónico NO será publicada. Por favor, NO uses palabras clave en el campo del nombre. Tengamos una conversación personal y significativa.