web-dev-qa-db-fra.com

Enregistrer un type de message personnalisé à partir du plug-in

J'essaie d'enregistrer un CPT à partir d'un plugin lors de l'activation mais semble avoir heurté un mur ... Quelqu'un voit quelque chose qui manque? Je ne reçois aucune erreur mais le CPT n'apparaît pas dans les liens du tableau de bord ....

    function ctg_cpt_init() {
    register_post_type( 'ctg_questions',
        array(
            'labels' => array(
                'name' => __( 'Questions' ),
                'singular_name' => __( 'Question' )
                ),
        'public' => true,
        'has_archive' => true,
        'rewrite' => array( 'slug' => 'questions' )
        )
    );
}
add_action( 'init', 'ctg_cpt_init' );

function ctg_rewrite_flush() {
    ctg_cpt_init();
    flush_rewrite_rules();
}
register_activation_hook( __FILE__, 'ctg_rewrite_flush' );

Merci,

2
Peter Gibbons

Extrayez la fonctionnalité d'enregistrement CPT de l'activationPluginhook afin qu'elle puisse se déclencher à init, à l'endroit souhaité.

Le hook d'activation du plugin est un hook unique; vous avez besoin de votre CPT pour tirerà chaque foisau crochet init, pas une seule fois.

1
Chip Bennett