web-dev-qa-db-fra.com

Définir la relation entre custom_post_types

J'essaie de créer et d'appliquer une telle relation entre custom_post_types.  parent_chlid 

Question:
Comment 'relier' les post_types de manière à permettre de trouver un parent/enfant de n'importe quel type de post_type?

Exemples:
Interroger le parent de 'troc' devrait donner classified_post_type.
L'interrogation des noeuds feuilles de type_post_utilisateur indique tous les noeuds feuille. etc

Je comprends que cela ne peut être réalisé simplement en créant custom_post_types. Mais existe-t-il un moyen comme taxonomy/metafield de lier différents types de publications personnalisées? En fait, je ne suis pas enclin à utiliser customn_post_types. Je veux juste le comportement mentionné ci-dessus, si possible.

ty

6
gyaani_guy

Je vous suggère de créer une taxonomie hiérarchique commune que vous enregistrez avec chacun de vos types d'articles personnalisés.

Les termes de cette taxonomie correspondraient à vos types de publication personnalisés (par exemple, utilisez le slug de type de publication personnalisé comme terme slug).

Vous pouvez ensuite structurer votre taxonomie pour qu'elle corresponde à la hiérarchie que vous avez conçue, et chaque fois que vous devez rechercher le parent/enfant que vous renvoyez à la taxonomie.

Vous pouvez avoir des champs méta parent_post et child_post pour stocker les ID de publication des publications parent et enfant respectives.

2
Aurovrata

utilisez la taxonomie, vous pouvez ensuite identifier par catégorie (comme la catégorie de publication ou les balises).

add_action( 'init', 'create_custom_tax' );


function create_custom_tax() {

    register_taxonomy(
        'category',
        'user-post-type',  // name of your custom post type
        array(
            'label' => __( 'Category' ), 

            'rewrite' => array( 'slug' => 'category' ),
            'hierarchical' => true,
        )
    );
}

https://codex.wordpress.org/Function_Reference/register_taxonomy

2
Mohit Kumar

Comme @Milo l'a dit, une solution rapide serait le plugin Posts 2 Posts. J'utilise Pods Framework pour cela depuis environ 2-3 ans maintenant. Il est facile d'implémenter des relations à l'aide de son interface utilisateur ou de sa puissante API.

1
Celso Bessa