作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我创建了新的自定义帖子类型 - 在 wordpress 中交易,它在发布新交易帖子后重定向到 edit.php(帖子列表)。所以我想将它重定向到交易列表页面 ( http://mydemo.com/demo/edit.php?post_type=deals ) 所以请帮助我。
我试过这段代码,但它会将所有帖子类型重定向到指定页面。
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;
}
最佳答案
您需要使用 get_post_type()功能。
将您的代码更改为
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;
}
编辑:由于您在The Loop 之外使用get_post_type()
,因此您需要传递帖子的ID,
get_post_type($_POST['id'])
关于php - 在 wordpress 中发布和更新帖子后,我的自定义帖子类型重定向到 edit.php,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23821977/
我是一名优秀的程序员,十分优秀!