On répond à certaines de ces questions ici: Définir les options de l'écran d'administration par défaut et l'ordre des métabox
Pour supprimer la métabox de permalien:
function my_remove_meta_boxes() {
remove_meta_box('slugdiv', 'my-post-type', 'core');
}
add_action( 'admin_menu', 'my_remove_meta_boxes' );
en outre, vous devrez masquer # edit-slug-box avec css ou javascript. voir: Chargement de scripts externes dans Admin mais UNIQUEMENT pour un type de publication spécifique?
Pour désactiver la modification rapide:
function my_remove_actions( $actions, $post ) {
if( $post->post_type == 'my-post-type' ) {
unset( $actions['inline hide-if-no-js'] );
}
return $actions;
}
add_filter( 'post_row_actions', 'my_remove_actions', 10, 2 );
Pour modifier le lien de prévisualisation, vous pouvez utiliser le filtre 'preview_post_link', mais cela ne fonctionne que lorsque la publication n'a pas encore été publiée. Ainsi, la solution serait de supprimer la méta-boîte d'envoi et d'ajouter la vôtre modifiée:
function my_replace_submit_meta_box() {
remove_meta_box('submitdiv', 'my-post-type', 'core');
add_meta_box('submitdiv', __('Publish'), 'custom_post_submit_meta_box', 'my-post-type', 'side', 'core');
}
add_action( 'admin_menu', 'my_replace_submit_meta_box' );
function custom_post_submit_meta_box() { // a modified version of post_submit_meta_box() (wp-admin/includes/meta-boxes.php, line 12)
...
}