我正在运行BeTheme但添加了自定义帖子类型。在index.php上,我需要从常规帖子和我创建的自定义帖子类型中提取," latest-news"。我不确定如何设置它以便index.php从我的帖子和我的自定义帖子类型中提取。
在我的主题中,index.php正在从此模板文件https://github.com/pingram3541/betheme/blob/master/includes/content-post.php
中提取函数在此文件第10行开头的部分中:
if( ! function_exists('mfn_content_post') ){
function mfn_content_post( $query = false, $style = false, $images_only = false ){
global $wp_query;
我非常确定我需要更改$args
变量$wp_query
正在提取的内容,以便array('post_type' => array('post')
也有'latest-news'
,但我不是确定在哪里找到这个,或者这甚至是正确的方法。
编辑:
我刚刚尝试将以下代码添加到functions.php
:
function add_custom_post_type_to_query( $query ) {
if ( $query->is_home() && $query->is_main_query() ) {
$query->set( 'post_type', array('post', 'latest-news') );
}
}
add_action( 'pre_get_posts', 'add_custom_post_type_to_query' );
这不起作用。
答案 0 :(得分:1)
档案的第21行:
if( ! $query ) $query = $wp_query;
尝试将其编辑为
$args=[
'post_type' => ['post', 'latest-news'],
];
if( ! $query ) $query = new WP_Query( $args );
让我知道这是否有效,具体取决于它可能产生意外结果的时间。