J'utilise le code ci-dessous pour attribuer automatiquement un CPT de "élément" à un "magazine" de catégorie, lorsque l'article est enregistré/mis à jour.
function assign_item_category_automatically($post_ID) {
global $wpdb;
if(!wp_is_post_revision($post_ID)) {
wp_set_object_terms( $post_ID, 'magazine', 'category');
}
}
add_action('publish_item', 'assign_item_category_automatically');
Cela fonctionne bien, mais la catégorie à laquelle il attribue est une catégorie normale ... alors que je souhaite l'attribuer à une catégorie dans une taxonomie personnalisée uniquement pour le "élément" CPT - je ne souhaite pas que les catégories normales soient disponibles pour les publications CPT. , ou des taxonomies personnalisées disponibles pour les messages normaux.
Je ne sais pas comment modifier cela pour faire ce que je veux.
Comme Documentation dit, wp_set_object_terms
accepte 4 arguments: $object_id, $terms, $taxonomy, $append
object_id
- ID de l'article, de la page, de la pièce jointe ou de tout élément figurant dans la table des articlesterms
- slug (s) ou id (s) ou terme (s)taxonomy
- slug of taxonomy - dans votre cas ce sera votre slug taxonomie personnaliséeappend
- si supprime tous les termes existants affectés à object ou ajoute de nouveaux termes à la finUsage: wp_set_object_terms($post_id, 'magazine', 'your_taxonomy_slug', true);