web-dev-qa-db-fra.com

Charger les catégories Custom_post_type post avec ajax

J'essaye de charger le post personnalisé de la catégorie custom_post_type en utilisant Ajax.

J'ai pris l'aide de Charger des catégories avec ajax

Le contenu se charge correctement pour les catégories par défaut, mais pas pour ma catégorie custom_post_type.

J'ai apporté peu de changement de fonction pour le post_type personnalisé:

$args = array (
        'cat' => $cat_id,
        'posts_per_page' => 3,
        'order' => 'DESC',
        'post_type' => 'collections'
      );

S'il vous plaît aidez-moi à charger le post personnalisé ...

1
Roshni

Il n'y a pas de "catégorie custom_post_type" et le type de publication personnalisé n'est pas associé aux catégories par défaut.

Pour le comprendre, vous devez le visualiser comme ceci: le type par défaut de WordPresspostest appelé post et le paramètre par défauttaxonomyest appelé category. et ils sont liés par défaut dans le noyau WordPress. Je mentionne cela parce que dans votre requête, vous utilisez le paramètre cat qui recherchera la valeur par défaut category qui n'est pas liée à votre type d'article personnalisé.

Vous pouvez les lier comme ceci après avoir enregistré votre type de message personnalisé:

register_taxonomy_for_object_type( 'category', 'collections' );

Je ne peux pas vous recommander ce qui précède, car il est plus difficile à gérer et crée des logiques étranges.

Ma recommandation: si vous créez un type de publication personnalisé (collections), vous devez enregistrer une nouvelle taxonomie (peut-être appelé collections_category) et la lier à votre collections. Ensuite, vous pouvez interroger comme ceci:

$args = array (
    'posts_per_page' => 3,
    'order' => 'DESC',
    'post_type' => 'collections',
    'tax_query' => array(
        array(
            'taxonomy' => 'collections_category',
            'field'    => 'term_id',
            'terms'    => array( $cat_id ),
        ),
    ),
  );
0
Andrei