function reorder_my_cpt( $q ) {
$s = get_current_screen();
if ( is_admin() && $s->base === 'edit' && $s->post_type === 'casestudies' && $q->is_main_query() ) {
$q->set('orderby', 'date');
$q->set('order', 'ASC');
}
}
我使用上面编写的代码,并希望按发布日期订购帖子类型,它在管理面板中工作,但在网站上我看到了这个错误:致命错误:调用未定义的函数get_current_screen()。< / strong>
答案 0 :(得分:2)
尝试在get_current_screen()
支票内移动is_admin()
来电,如下所示:
function reorder_my_cpt( $q ) {
if ( is_admin() ) {
$s = get_current_screen();
if ( $s->base === 'edit' && $s->post_type === 'casestudies' && $q->is_main_query() ) {
$q->set('orderby', 'date');
$q->set('order', 'ASC');
}
}
}
这样就不会在前端调用get_current_screen()
。