在下面的代码段中可以找到将帖子从自定义帖子类型“图片”拉入主页和日期存档页的内容。。
添加到functions.php
这适用于主页:
function add_custom_post_type_to_query( $query ) {
if ( $query->is_home() && $query->is_main_query() ) {
$query->set( \'post_type\', array(\'post\', \'pictures\') );
}
}
add_action( \'pre_get_posts\', \'add_custom_post_type_to_query\' );
但这两者都不适用:
function add_custom_post_type_to_query( $query ) {
if ( $query->is_home() && $query->is_date() && $query->is_main_query() ) {
$query->set( \'post_type\', array(\'post\', \'pictures\') );
}
}
add_action( \'pre_get_posts\', \'add_custom_post_type_to_query\' );
还想添加
!is_admin()
保持管理屏幕清晰,但不知道如何操作。
谢谢
最合适的回答,由SO网友:Qaisar Feroz 整理而成
在您的代码中( $query->is_home() && $query->is_date() && $query->is_main_query() )
始终返回false
因为$query->is_home()
和$query->is_date()
不能是true
在同一页上<试试这个,
function add_custom_post_type_to_query( $query ) {
if ( ! is_admin() && $query->is_main_query() ) {
if ( $query->is_date() || $query->is_home() ) {
$query->set( \'post_type\', array(\'post\', \'pictures\') );
}
}
}
add_action( \'pre_get_posts\', \'add_custom_post_type_to_query\' );
我希望这有帮助!