具有特定关键字的RSS提要

时间:2019-02-12 作者:Dushyant Joshi

我可以从下面的url获取文章作为RSS提要

http://wordpress_site/blog/feed
我还可以从BlogSpot获取文章,其中包含以下特定关键字

https://www.yourblogname.blogspot.com/feeds/posts/default?q=KEYWORD
我曾尝试在wordpress博客中使用特定关键字筛选文章,但我无法获得。URL可以是什么。

我是wordpress的新手。

2 个回复
最合适的回答,由SO网友:Krzysiek Dróżdż 整理而成

您可以使用修改提要中显示的帖子列表pre_get_posts 行动对于仅针对feed,您可以使用is_feed 条件标记。

这样的代码可以如下所示:

add_action( \'pre_get_posts\', function ( $query ) {
    if ( ! is_admin() && is_feed() && $query->is_main_query() ) {
        if ( isset($_GET[\'q\']) && trim($_GET[\'q\']) ) {
            $query->set( \'s\', trim($_GET[\'q\']) );
        }
    }
} );
这样你就可以去example.com/feed/?q=KEYWORD 而且你会得到过滤后的提要(小心——大多数浏览器都在缓存提要,所以你必须强制他们刷新)。

SO网友:birgire

下面是如何在提要上使用内置公共查询参数:

Query parameter: s

我们可以使用s 提要上的查询参数:

https://example.com/feed/?s=KEYWORD
这将为所有可搜索的帖子类型生成关键字提要。

Query parameter: post_type

我们可以通过以下方式将其限制为给定的帖子类型:

https://example.com/feed/?s=KEYWORD&post_type=post

Query parameter: exact

我们还可以使用exact 查询搜索参数以精确匹配搜索关键字(无通配符):

https://example.com/feed/?s=hello+world&post_type=post&exact=1

Query parameter: sentence

这个sentence 查询搜索参数可用于匹配整个关键字句子(无分词):

https://example.com/feed/?s=hello+world&post_type=post&sentence=1

All together:

https://example.com/feed/?s=hello+world&post_type=post&exact=1&sentence=1