Jawaban:
/**
* Redirect admin pages.
*
* Redirect specific admin page to another specific admin page.
*
* @return void
* @author Michael Ecklund
*
*/
function disallowed_admin_pages() {
global $pagenow;
# Check current admin page.
if ( $pagenow == 'edit.php' && isset( $_GET['post_type'] ) && $_GET['post_type'] == 'page' ) {
wp_redirect( admin_url( '/post-new.php?post_type=page' ) );
exit;
}
}
Nyalakan fungsi di atas pada kait admin_init
.
add_action( 'admin_init', 'disallowed_admin_pages' );
Sintaks alternatif:
/**
* Redirect admin pages.
*
* Redirect specific admin page to another specific admin page.
*
* @return void
* @author Michael Ecklund
*
*/
add_action( 'admin_init', function () {
global $pagenow;
# Check current admin page.
if ( $pagenow == 'edit.php' && isset( $_GET['post_type'] ) && $_GET['post_type'] == 'page' ) {
wp_redirect( admin_url( '/post-new.php?post_type=page' ) );
exit;
}
} );
Solusi Michael tampaknya dimaksudkan untuk digunakan di dalam kelas, jadi bagi siapa pun yang menginginkan fungsi mandiri yang akan bekerja secara langsung di functions.php, contoh di bawah ini termasuk redirect dari customize.php ke halaman opsi tema dan yang dari fungsi asli Michael .
function admin_redirects() {
global $pagenow;
/* Redirect Customizer to Theme options */
if($pagenow == 'customize.php'){
wp_redirect(admin_url('/admin.php?page=theme_options', 'http'), 301);
exit;
}
/* OP's redirect from /wp-admin/edit.php?post_type=page */
if($pagenow == 'edit.php' && isset($_GET['post_type']) && $_GET['post_type'] == 'page'){
wp_redirect(admin_url('/post-new.php?post_type=page', 'http'), 301);
exit;
}
}
add_action('admin_init', 'admin_redirects');
Ya ini mungkin dengan menambahkan tindakan untuk admin_init
, pada saat itu Anda bisa memeriksa uri permintaan untuk melihat apakah itu cocok/wp-admin/edit.php?post_type=page
dan jika tidak mengeluarkan redirect ke halaman posting add: /wp-admin/post-new.php?post_type=page
.
Juga API Plugin dan halaman referensi tindakan pada kodeks WordPress menjelaskan lebih detail tentang tindakan dan cara kerjanya.