未确认日期.php模板的自定义发布类型

时间:2013-08-14 作者:user892670

所以我的问题是这个。我正在建立一个新闻网站,需要在主页上显示当前日期的多个链接列表。

为了便于管理,我将不同的部分划分为自定义的帖子类型。

当您访问主页时,这很好,因为我正在查询每个帖子类型的当前日期。

现在我的问题是,我想使用本机查询变量来表示年、月和日,并显示一个设置类似于主页的页面,但该页面显示从url中设置的日期开始的所有不同帖子类型。例如:

http://mysite.com/2013/08/13/

我已经在这里问了关于retrieving query vars from the homepage

并被指向使用日期的方向。php模板。

起初我认为这是固定的,现在一切正常,不需要重定向、重写或额外的查询变量。

关键是日期。php模板只有在我有一篇发布日期为该日期的常规帖子时才会被选中,否则它不会注册我的自定义帖子并将我发送到404页面。

有没有人知道如何解决这个问题,以便它能够重定向到日期。只要我的自定义帖子类型之一是在url中指定的日期发布的,php?这就是我所需要的。我可以处理其余的一切,只要我能把它定向到那个页面。

我尝试了几种不同的过滤器等,试图将custom\\u帖子类型包括到存档中,并且我始终确保在任何更改后访问permalinks页面,但我似乎无法确认任何帖子类型的日期并将其发送给我。php。

我还尝试设置archive-custom\\u post\\u type\\u名称。php模板,但它也没有重新定向。(我想是因为我在努力避免额外的鼻涕虫)

1 个回复
最合适的回答,由SO网友:Milo 整理而成

日期存档默认为仅查询post 帖子类型,您可以通过pre_get_posts 行动

function wpa_date_archive_post_types( $query ){
    if( $query->is_main_query() && $query->is_date() ):
        $query->set( \'post_type\', array( \'post\', \'your_custom_type\' ) );
    endif;
}
add_action( \'pre_get_posts\', \'wpa_date_archive_post_types\' );

结束

相关推荐

使用wp_reDirect和.htaccess重新路由搜索(并传递剩余的GET变量)

我想用wp_redirect() 将搜索重定向到我在中建立的格式.htaccess. 不幸的是,我在做这件事时遇到了一些问题。我需要将搜索重定向到一系列文件夹,然后将剩余参数附加到URL的末尾,最终结果如下所示:http://www.xxxxxxx.com/search/Used/MT/Billings/?s=BMW&z=59105&r=150&m=150000&pmin=1000&pmax=30000&submit=Refine 到目前为止,我