• Saltar a la navegación principal
  • Saltar al contenido principal
  • Saltar a la barra lateral principal

DecodeCMS

Tu WordPress a otro Nivel ...

  • Acerca de
  • Contacto
  • Inicio
  • Tutoriales
    • Themes
    • Plugins
    • Core
    • Recursos
  • Cursos
  • Acceder
    • Mis cursos
    • Mi Cuenta
    • Acceder
Inicio / Tutoriales / Core / Ordenar alfabéticamente el contenido de WordPress

Ordenar alfabéticamente el contenido de WordPress

Ordenar alfabéticamente el contenido de WordPress

[ 15 abril 2020 ] [ Autor: Jhon Marreros Guzmán ][ Core - Intermedio] [ ]

mejoras

¿Me ayudas a llegar a más gente?

Twittear Compartir LinkedIn WhatsApp

WordPress por defecto ordena las entradas y otros tipos de contenido (custom post type) de acuerdo a la fecha de creación y de manera descendente, sin embargo puedes cambiar el orden por defecto y ordenar tu contenido alfabéticamente a través de código.

 

Resultado Final

Lo que al final obtendrás será algo similar a lo que se muestra en la siguiente imagen:

Resultado final ordenamiento

 

Generalidades

El código para el ordenamiento se basa en cambiar la consulta SQL, usamos el Hook pre_get_posts el cual hace referencia a una función que toma como parámetro justamente el objeto de la consulta y al cual podemos hacer modificaciones.

El código que se muestra en los siguientes ejemplos puedes agregarlo en el archivo functions.php de tu tema hijo o puedes usar un plugin de Snippets..

 

Ordenar todas las entradas

Si quieres ordenar todas las entradas para que aparezcan en orden alfabético, ya sea en el inicio o en las categorías puedes usar el siguiente código:

add_action( 'pre_get_posts', 'dcms_order_content' );
function dcms_order_content( $query ) {
	if ( $query->is_main_query() ){
		$query->set( 'orderby', 'title' );
		$query->set( 'order', 'ASC' );
	}
	return $query;
}

 
En el código anterior la comprobación se hace siempre si es la consulta principal y no hay ninguna condición adicional.

 

Ordenar entradas de una categoría específica

Para ordenar las entradas de una categoría específica puedes usar el siguiente código.

add_action( 'pre_get_posts', 'dcms_order_content' );
function dcms_order_content( $query ) {
	if ( $query->is_main_query() && is_category('blog') ){
		$query->set( 'orderby', 'title' );
		$query->set( 'order', 'ASC' );
	}
	return $query;
}

 
En el código anterior he asumido que tienes entradas en una categoría llamada blog

 

Ordenar Custom Post Type de una categoría específica

Podemos extender el código de ordenamiento de entradas de una categoría específica para cualquier custom post type.

add_action( 'pre_get_posts', 'dcms_order_content' );
function dcms_order_content( $query ) {
	if ( $query->is_main_query() && is_category('cocina') ){
		$query->set( 'post_type', 'recetas_post_type' );
		$query->set( 'orderby', 'title' );
		$query->set( 'order', 'ASC' );
	}
	return $query;
}

 
En el código anterior he asumido que tienes un custom post type registrado con el id recetas_post_type y además que están mostrándose como parte de la categoría cocina.

Para aprender a crear Custom Posts Types puedes revisar: Usando Custom Post Types en WordPress

 

Ordenar Custom Post Type para una taxonomía específica

Si tienes una taxonomía asociada a un custom post type, simplemente puedes cambiar la condición de comprobación de categoría a taxonomía.

add_action( 'pre_get_posts', 'dcms_order_content' );
function dcms_order_content( $query ) {
	if ( $query->is_main_query() && is_tax('pais') ){
		$query->set( 'post_type', 'recetas_post_type' );
		$query->set( 'orderby', 'title' );
		$query->set( 'order', 'ASC' );
	}
	return $query;
}

 
En el código anterior he asumido que tienes un custom post type registrado con el id recetas_post_type y además que esta asociado a una taxonomía llamada pais.

Para aprender a crear nuevas Taxonomías puedes revisar: Aprende a usar Taxonomías en WordPress

 

Conclusión

Como has podido comprobar, puedes cambiar la consulta que recupera las entradas o cualquier custom post type y hacer modificaciones, en los ejemplos anteriores hemos cambiado el orden de acuerdo al título para que se muestre de forma ascendente.

 
¿Aún con dudas?, en el siguiente video se detallan los puntos anteriores.

Suscríbete a DecodeCMS:  

 

¿Me ayudas a llegar a más gente?

Twittear Compartir LinkedIn WhatsApp

Artículos Relacionados

  • Taxonomías en WordPressAprende a usar Taxonomías en WordPress
  • Custom Post Types en WordPressUsando Custom Post Types en WordPress
  • Herramienta de Salud del Sitio en WordPressHerramienta de Salud del Sitio en WordPress
  • Nombre de la categoría en las clases del body de una entradaNombre de la categoría en las clases del body de una entrada
Valora este artículo : 1 barra2 barras3 barras4 barras5 barras (6 votos, promedio: 4,83 de 5)
Cargando...

Interacciones con los lectores

Comentarios

  1. Dany

    5 octubre, 2020

    Hola, he estado intentando ordenar por fecha asc ciertas categorías y desc otras, con el código de entradas de una categoría específica y no me funcionó. Hice mal reemplando tittle por date?. Gracias por tus aportes son de mucha ayuda!

    • Jhon Marreros Guzmán

      7 octubre, 2020

      Hola, prueba usar ‘post_date’

Para escribir código envolver con: <pre class="language-xxx"><code> </code></pre> ,reemplaza las xxx (php, css, html)

*

* Gravatar habilitado

Barra lateral principal

Presentación

Curso Decodifica WordPress

Únete a DecodeCMS

Recibirás como regalo:

Guia práctica con video:
¿Quieres agregar código a WordPress? Revisa las diferentes opciones que tienes.Ver más

Alojamiento Wordpress

Niveles

Básico Intermedio Avanzado

Etiquetas

accesibilidad css dashboard editor error funcionalidad herramientas imagen js librería mejoras optimización seguridad social

Populares

Estilos de editor en Gutenberg

Cambiar el logo en la versión móvil de tu sitio Web

Aprende a usar Taxonomías en WordPress

Optimizar la carga de imágenes con Lazy Load

© logo decode pie
Política de Privacidad | Política de devoluciones
Copyrigth 2022 Todos los derechos reservados