Leonardo Reyes
Experto en WordPress y WooCommerce.
WordPress

El bloque llamado BLOG de DIVI te permite mostrar posts en una determinada zona de la web, insertarlos en una página, etc, sin embargo, este bloque no tiene opciones de configuración, y los muestra por fecha por defecto. En este post veremos cómo crear una función para mostrar los posts como queramos, ordenados por: Título, aleatoriamente, por fecha, por comentarios, etc.

El Query del Bloque Blog de DIVI

Con esta sencilla función que copiaremos y pegaremos en el archivo functions.php de nuestro theme obtendremos los posts en el orden que necesitemos:

function change_query_order( $query ) {
if ( $query-is_home() && $query-is_main_query() ) {
$query-set( 'orderby', 'title' );
$query-set( 'order', 'ASC' );
}
}
add_action( 'pre_get_posts', 'change_query_order' );

El valor order podría tener los siguientes valores:
ASC – Ordena de forma ascendente de menor a mayor.
DESC – Ordena de forma descendente de mayor a menor.

Y el valor orderby podría tener muchas opciones:
ID – Ordena por id de envío. Atención a las mayúsculas.
author – Ordena por autor.
title – Ordena por titulo.
date – Ordena por fecha.
modified – Ordena por fecha de última modificación.
rand – Orden aleatorio.
comment_count – Ordena por número de comentarios.

Así, si quisiéramos mostrar los posts que más comentarios tienen en orden descendente, utilizaríamos este código:

function change_query_order( $query ) {
if ( $query-is_home() && $query-is_main_query() ) {
$query-set( 'orderby', 'comment_count' );
$query-set( 'order', 'DESC' );
}
}
add_action( 'pre_get_posts', 'change_query_order' );

Como puedes observar, estos nos permite personalizar mucho la forma en la que mostramos los posts.

Si lo necesitas, puedes obtener más información sobre ORDER y ORDERBY en WordPress.org.

Deja una respuesta

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

Publicar comentario