Désactiver un Custom Post Type inutile

Vous avez acheté et installé un thème WordPress qui comporte un Custom Post Type “Témoignages” mais vous ne comptez pas l’utiliser sur votre site. Vous avez donc tout intérêt à “nettoyer” l’interface d’administration de ce CPT encombrant, de manière à la rendre plus lisible. Si par la suite, vous envisagez de vous servir de ce CPT, vous n’aurez qu’à supprimer le code précédemment ajouté.

Voici une fonction fournie par Nacin qui permet de désactiver un post type particulier :

if ( ! function_exists( 'unregister_post_type' ) ) :
function unregister_post_type( $post_type ) {
global $wp_post_types;
if ( isset( $wp_post_types[ $post_type ] ) ) {
unset( $wp_post_types[ $post_type ] );
return true;
}
return false;
}
endif;

Ensuite, il suffit d’appeler la fonction avec en paramètre le CPT à désactiver :

unregister_post_type( 'testimonials' );

Note:
Il est fortement déconseillé de désactiver un Post Type natif à WordPress.
Lorsque vous désactivez a posteriori un CPT, cela ne supprime pas ses entrées dans la base de données. Il vous faudra procéder à un nettoyage avec la requête suivante : DELETE FROM wp_posts WHERE post_type = '[your custom post type]'

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *