Comment ajouter un paramètre «supports» pour un type de publication personnalisé?

4

Existe-t-il un moyen de prendre en charge une fonctionnalité personnalisée pour un type de publication personnalisé après sa création?

Je sais comment créer un type d'article personnalisé à l'aide de register_post_type (), et comment utiliser le paramètre supports pour spécifier ce que le CPT doit prendre en charge;

'supports' => array( 'title', 'editor', 'author', 'thumbnail', 'excerpt' ,'headway-seo') 

Mais dans les situations où le CPT est enregistré par un plugin ou un thème, existe-t-il un moyen d’injecter des éléments de support (manipuler le tableau de support) du CPT après qu’il a été enregistré, en utilisant un filtre / crochet WP ?

    
posée mikkelbreum 21.10.2012 - 18:09

2 réponses

9

Oui, il existe une fonction appelée add_post_type_support

Accrochez-vous à init - en retard, après la création des types d'articles - et ajoutez un support.

Ajout de la prise en charge d'extraits aux pages, par exemple:

<?php
add_action('init', 'wpse70000_add_excerpt', 100);
function wpse70000_add_excerpt()
{
    add_post_type_support('page', 'excerpt');
}
    
réponse donnée chrisguitarguy 21.10.2012 - 18:13
0

Une autre approche consiste à se connecter à register_post_type_args et à mettre à jour le tableau supports .

Ceci est particulièrement utile si vous avez des plugins tiers qui s'accrochent aux arguments CPT pour afficher le contenu.

function wpse70000_add_author_metabox_to_cpt_book( $args, $post_type ) {
    if ($post_type != 'POST_TYPE_NAME') // set post type
        return $args;
    $args['supports'] = array( 'author' ); // set the 'supports' array
    return $args;
}

add_filter( 'register_post_type_args', 'wpse70000_add_author_metabox_to_cpt_book', 10, 2 );
    
réponse donnée Christine Cooper 19.10.2017 - 12:32

Lire d'autres questions sur les étiquettes