Accueil - Non classé - Afficher les articles d’une catégorie spécifique quand une grille Gridbuilder est utilisé dans un template

Afficher les articles d’une catégorie spécifique quand une grille Gridbuilder est utilisé dans un template

2 Avr 2025

Changer l’ID de la grille concernée en seconde ligne uniquement : remplacer 2 dans l’exemple ci-dessous.
Il suffit donc de créer une grille en ne filtrant pas par catégorie, l’insérer dans la template, puis ajouter le code ci-dessous dans le function.php du theme enfant

function grid_related_posts_category( array $query_args, int $grid_id ) {
	if ( $grid_id === 2 ) {
		if ( function_exists( 'yoast_get_primary_term_id' ) ) {
			$category = yoast_get_primary_term_id( 'category', get_the_ID() );
		} else {
			$category = wp_get_post_categories( get_the_ID(), [ 'number' => 1 ] );
		}

		$query_args = array_merge($query_args, [
			'post__not_in' => [ get_the_ID() ],
			'tax_query' => [
				[
					'taxonomy' => 'category',
					'terms' => $category,
				],
			],
		]);
	}

	return $query_args;

}

add_filter( 'wp_grid_builder/grid/query_args', 'grid_related_posts_category', 10, 2 );

un problème ?

La solution de cet article ne fonctionne pas ou plus ? Faites-nous en part et nous étudierons le problème pour trouver une solution et vous la communiquer.

[ninja_form id=1]

sujets liés

Erreur de shortcode : l'attribut view-id est manquant ou incorrect (acf_views view-id="778" name="posts")

Vous cherchez un plugin ?

Faites le bon choix pour votre projet en lisant nos reviews et tests approfondis de plugins.

Share This