WordPress 输出的feed中只有post类型的文章,不包含自定义文章类型的文章。怎么办?虽然网上已经有很多类似教程,但是我还是要在博客记录一下,方便以后查阅。

一、让feed包含所有自定义文章类型

在当前主题的functions.php中加入一下php即可:


function Ludou_feed_request($qv) {
   if (isset($qv['feed']))
      $qv['post_type'] = get_post_types();

   return $qv;
}
add_filter('request', 'Ludou_feed_request');

二、自定义feed中自定义文章类型的数量

如果你定义了5个自定义文章类型,但是只想在feed中包含其中的3个,这也是很容易实现的。我们将上面的代码改成:


function Ludou_feed_request($qv) {
   if (isset($qv['feed']) && !isset($qv['post_type']))
      // 'story', 'books', 'movies'是你要包含的post type,自行增删改
      $qv['post_type'] = array('post', 'story', 'books', 'movies');

   return $qv;
}
add_filter('request', 'Ludou_feed_request');