未找到附件页面标签查询和帖子

时间:2017-08-24 作者:Roger

我的目标是使用pre\\u get\\u posts更改主查询,以便我只能通过附件和分配了特定标记的附件进行搜索。这些标记将使用\\u tags()显示给用户。

该逻辑已就位,因此我的附件具有标记,并使用此附件页面模板上的var\\u dump对此进行确认:http://photonew.rasdesignmedia.com/surf-kayaking-mark-woolward-a633257/

问题是,当我单击由\\u tags()输出的标记链接时,找不到帖子(http://photonew.rasdesignmedia.com/tag/surfing/). 我的修改主查询的函数当前输出查询,以便我可以看到发生了什么。标签/术语已存在,但查询无法找到帖子。

我已经测试了一个非pre\\u get\\u posts版本,它使用了2017个主题,没有定制,我仍然没有返回任何帖子。

我已经通过设置>永久链接刷新了内容。

我发现了其他几个类似主题的帖子,但大多数要么是通过永久链接重置解决的,要么是CPT。

我觉得我错过了一些显而易见的东西。

function search_attachment_post_type($query) {

    if ( !is_admin() && $query->is_main_query() ) {

        if ($query->is_tag) {
            echo "This is a tag query. 404 Error is below the query dump.<br>";
            $query->set(\'post_type\', \'attachment\');
            $query->set(\'taxonomy\', \'post_tag\');
            echo \'<pre>$query is set to post_type attachment and taxonomy to post_tag<br><br>\'; var_dump($query); echo \'</pre>\';
        }
    }
}
add_action( \'pre_get_posts\', \'search_attachment_post_type\' );

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

该页面不是404,而是返回状态码200。标题和正文标记还表明页面加载正常。

有几件事-没有taxonomy 论点无论如何,这都是多余的,因为查询已经包含从解析的URL中提取的查询分类法和术语。

中概述了您可能遇到的问题this note from the WP_Query Codex page under type parameters:

\'attachment\' - 附件。当违约时WP_Query post_status\'publish\', 附件具有默认值post_status 属于\'inherit\'. 这意味着除非您还显式设置post_status\'inherit\'\'any\'.

结束

相关推荐

如何更改我的主题页脚中jQuery的顺序?

在我的功能顶部。php是以下代码:function load_theme_scripts() { // Load stylesheets. wp_enqueue_style(\'bootstrap\', get_template_directory_uri() . \'/css/bootstrap.min.css\', array(), \'3.3.5\'); // Load our main stylesheet. wp_enqueue_style(\'info