Ad alcune di queste domande viene fornita una risposta qui: Imposta le opzioni della schermata di amministrazione predefinita e l'ordine Metabox
Per rimuovere il metabox permalink:
function my_remove_meta_boxes() {
remove_meta_box('slugdiv', 'my-post-type', 'core');
}
add_action( 'admin_menu', 'my_remove_meta_boxes' );
inoltre, dovrai nascondere # edit-slug-box con css o javascript. vedi: Caricamento di script esterni nell'amministratore ma SOLO per un tipo di post specifico?
Per disabilitare la modifica rapida:
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 );
Per modificare il link di anteprima, è possibile utilizzare il filtro "preview_post_link", ma funziona solo quando il post non è stato ancora pubblicato. Quindi, la soluzione sarebbe quella di rimuovere la meta box di invio e aggiungerne una modificata:
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)
...
}