web-dev-qa-db-fra.com

Comment obtenir cette demande d'utilisation du modèle de page Type de message personnalisé?

Je lis la réponse pour ce post qui dit que vous pouvez faire quelque chose comme ça:

http://example.com?post_type=car&color=red

Lorsque vous visualisez $ wp_query, tout semble bien fonctionner. C’est-à-dire que je reçois des types de poste "voiture" qui portent le terme "rouge". Cependant, la demande utilise le modèle de taxonomie personnalisé "couleur". (Dans mon cas, c'est taxonomy.php.)

Comment puis-je obtenir cette demande d'utilisation du modèle de type de message personnalisé 'archive-car.php'?

1
robertwbradford

Commutez le fichier taxonomy.php de la même manière que le fichier single.php pour prendre en charge des modèles de publication personnalisés. Ceci est un code non testé, donc cela peut ne pas fonctionner - mais, commencez par obtenir le type de publication

 $ post_type = get_query_var ('post_type'); 

Donc si $ post_type contient post_type = 'car', alors incluez archive-car.php comme ceci:

 if ($ post_type = 'car') 
 get_template_part ('archive-car'); 
 elseif ($ post_type = 'boat') 
 get_template_part (' archive-boat '); 
 elseif ($ post_type =' bike ') 
 get_template_part (' archive-bike '); 
 else 
 get_template_part (' regular- taxonomie '); 

Une meilleure alternative serait si vous pouviez établir une redirection de modèle comme dans cette réponse, mais je ne sais pas si c'est même possible. Si possible, vous redirigeriez le modèle de taxonomie en fonction de la valeur de $ post_type.

Comment changer rapidement de template singulier de type message personnalisé?

0
marfarma

Je ne suis pas sûr que ce soit possible. Si j'ai bien compris, chaque fois que vous consultez des publications filtrées par une taxonomie, Wordpress recherche des modèles de taxonomie. Sur la base de la hiérarchie, vous pouvez vous débarrasser de toutes les pages de taxonomie et n’avoir que des pages d’archives disponibles en tant que modèles, mais cela semble un peu extrême et pas trop utile.

Qu'espérez-vous réaliser avec ce code?

Vous pouvez créer des fonctions dans votre page archive-car.php pour réagir aux voitures dans un terme de couleur spécifique. Peut-être que cela vous donnera la fonctionnalité que vous recherchez.

0
Aris Blevins