web-dev-qa-db-fra.com

Hiérarchie de type de poste

Je cherche à créer deux types de publication personnalisés, dont l'un est un enfant de l'autre. Appelons-les auteurs et livres pour plus de simplicité.

Les auteurs doivent être une URL de premier niveau et la page de destination qui leur est destinée doit afficher une liste de tous leurs livres écrits. Donc, vous auriez quelque chose comme:

http://monsite.com/Shakespeare/ http://monsite.com/Shakespeare/Macbeth http://monsite.com/Shakespeare/ Othello

Comment créer quelque chose comme ça dans Wordpress? Je vais bien si cela nécessite un codage personnalisé, mais je ne sais pas exactement comment exprimer la relation entre les types de publication et Wordpress.

2
KevinM

Pour moi, le plus logique serait d’avoir un type de publication "Livre" personnalisé, puis tous les attributs des livres (Auteur, Collection, Genre, etc.) seraient des taxonomies personnalisées.

Ensuite, pour vos URL, vous pouvez utiliser une méthode de réécriture d’URL personnalisée pour obtenir ce que vous voulez.

2
mike23

S'il s'agit d'une relation un-à-plusieurs (un auteur peut avoir plusieurs livres, mais un livre ne peut pas avoir plusieurs auteurs), vous pouvez utiliser le champ post_parent dans la table posts.

S'il s'agit d'une relation plusieurs à plusieurs, vous pouvez utiliser mon plugin Posts 2 Posts .

Pour générer ces URL, vous pouvez utiliser le filtre 'post_type_link'.

Enfin, pour faire correspondre ces URL ultérieurement, vous pouvez revenir à la règle de réécriture de page et analyser manuellement les composants (utilisez l'action 'parse_request').

1
scribu