NB : Faire une sauvegarde de votre thème, de votre fichier et/ou votre base de données avant d’ajouter ces fonctions tutoriels.
Publié le : 05 août 2017 - Modifié le : 19 janvier 2023
Temps de lecture : 2 minutes, 13 seconds - 251 mots
Partager la publication "Post Type : Cacher le permalien d’un post type coté admin WordPress"
Post Type : Nous allons dans ce tutoriel mettre en place une fonction qui va nous permettre de cacher le permalien single d’un Post Type. Si par exemple si vous créez un Post Type qui n’aura pas donc de single et donc on voudrait cacher le permalien à notre client.
Voici l’image ….
Et puis si vous souhaitez optimiser que ces résultats ne soit pas dans les pages Google comme un Post Type qui sert pour un slider ou des données cachées. Il faut bien vérifier que dans vos arguments de la fonction post type que ces paramètres soit (Consulter notre article pour Créer un Post Type) :
public => false,
has_archive => false
publicly_queryable => false
Donc dans notre fonction WordPress, a mettre dans votre functions.php ou dans votre fichier principal de votre plugin, nous allons dire en condition que si on est dans le Post Type en version Admin head, cache en css le permalien comme dans cet exemple.
///////////////////////////////////////////// //////// Permalinks display no ////////////// ///////////////////////////////////////////// add_action('admin_head', 'votretheme_permalink_none'); function votretheme_permalink_none() { global $post_type; if ($post_type == 'CPT_NAME_HERE' ) { echo '<style>#edit-slug-box, #message a {display:none;}</style>'; } elseif ($post_type == 'CPT_NAME_HERE' ) { echo '<style>#edit-slug-box, #message a, #post-status-info, #postdivrich {display:none;}</style>'; } }
Vous pouvez ajouter une condition qui dit que toutes les archives et les single de votre Post Type peuvent être redirigés en 301 vers le home. Ça permettra de ne pas référencer des archives ou single. Vous avez la possibilité, si vous ne voulez pas passer par cette fonction, de les interdire dans le sitemap, dans le plugin SEO Yoast.
function votretheme_postype_redirect() { global $wp_query; // redirect from 'slideshow' CPT to home page if ( is_archive('CPT_NAME_HERE') || is_singular('CPT_NAME_HERE') ) : $url = get_bloginfo('url'); wp_redirect( esc_url_raw( $url ), 301 ); exit(); endif; } add_action ( 'template_redirect', 'votretheme_postype_redirect', 1);
NB : Faire une sauvegarde de votre thème, de votre fichier et/ou votre base de données avant d’ajouter ces fonctions tutoriels.