在wordpress中发布和更新帖子后,我的自定义帖子类型重定向到edit.php
我在wordpress中创建了新的自定义帖子类型-deals,在发布新政帖子之后,它被重定向到edit.php(posts列表)。所以我想把它重定向到交易列表页(),所以请帮助我 我尝试了这段代码,但它将所有文章类型重定向到指定的页面在wordpress中发布和更新帖子后,我的自定义帖子类型重定向到edit.php,php,wordpress,redirect,Php,Wordpress,Redirect,我在wordpress中创建了新的自定义帖子类型-deals,在发布新政帖子之后,它被重定向到edit.php(posts列表)。所以我想把它重定向到交易列表页(),所以请帮助我 我尝试了这段代码,但它将所有文章类型重定向到指定的页面 add_filter( 'redirect_post_location', 'wpse_124132_redirect_post_location' ); /** * Redirect to the edit.php on post save or publis
add_filter( 'redirect_post_location', 'wpse_124132_redirect_post_location' );
/**
* Redirect to the edit.php on post save or publish.
*/
function wpse_124132_redirect_post_location( $location ) {
if ( isset( $_POST['save'] ) || isset( $_POST['publish'] ) )
return admin_url( "edit.php?post_type=deals" );
return $location;
}
您需要使用函数
将代码更改为
function wpse_124132_redirect_post_location( $location ) {
if ( 'deals' == get_post_type() ) {
/* Custom code for 'deals' post type. */
if ( isset( $_POST['save'] ) || isset( $_POST['publish'] ) )
return admin_url( "edit.php?post_type=deals" );
}
return $location;
}
编辑:由于您使用的是循环外部的get\u post\u type()
,因此您需要传递帖子的ID
get\u post\u type($\u post['id'])
您需要使用函数
将代码更改为
function wpse_124132_redirect_post_location( $location ) {
if ( 'deals' == get_post_type() ) {
/* Custom code for 'deals' post type. */
if ( isset( $_POST['save'] ) || isset( $_POST['publish'] ) )
return admin_url( "edit.php?post_type=deals" );
}
return $location;
}
编辑:由于您使用的是循环外部的get\u post\u type()
,因此您需要传递帖子的ID
get\u post\u type($\u post['id'])
它就像一个符咒。谢谢我觉得很奇怪,当其他非管理员用户没有本机帖子的权限时,WP会将他们重定向到edit.php。我也不明白为什么WP没有增加权限,这让我很震惊,用户在管理后端做任何事情都需要“编辑帖子”。这很有魅力。谢谢我觉得很奇怪,当其他非管理员用户没有本机帖子的权限时,WP会将他们重定向到edit.php。我也不明白为什么WP没有增加权限,这让我很震惊,用户需要有“编辑帖子”才能在管理后端做任何事情。