WordPress – Définition d’un modèle personnalisé pour plusieurs types de publication personnalisés

Publié par Jean-Michel le

Je me demandais si quelqu’un savait comment configurer un seul modèle pour plusieurs types de publication personnalisés. Par exemple – je ne veux pas configurer plusieurs modèles qui font exactement la même chose.

Code

J’ai trouvé l’extrait suivant lors de la recherche et cela ne semble pas fonctionner. Je l’ai placé functions.phpdans le thème que j’utilise.

 add_filter( 'single_template', function( $template ) {

  $cpt = [ 'available-properties', 'leased-sold', 'norway' ];

  return in_array( get_queried_object()->post_type, $cpt, true )
    ? 'path/to/country-single.php'
    : $template;

} );

Solution n°1 trouvée

Trouvé la réponse

Cela semble fonctionner très bien !

add_filter( 'template_include', function( $template )
 {
     // your custom post types
     $my_types = array( 'available-properties', 'leased-sold' );
     $post_type = get_post_type();

     if ( ! in_array( $post_type, $my_types ) )
         return $template;

     return get_stylesheet_directory() . '/page-content__projects-single.php';
 });

Solution n°2 trouvée

Trouvé la réponse

Cela semble fonctionner très bien !

add_filter( 'template_include', function( $template )
 {
     // your custom post types
     $my_types = array( 'available-properties', 'leased-sold' );
     $post_type = get_post_type();

     if ( ! in_array( $post_type, $my_types ) )
         return $template;

     return get_stylesheet_directory() . '/page-content__projects-single.php';
 });

Catégories : Wordpress

Jean-Michel

Jean-Michel est en charge de la partie blog du site. Il met en place la stratégie de contenu et répond aux questions fréquentes sur Wordpress.

0 commentaire

Laisser un commentaire

Avatar placeholder

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *