I’m trying to get a feed for pages and a separate feed for posts. The feed for posts works perfect as it is.
I just want a separate one but i have tried all the plugins and searched for about a week straight and still could not find a solution
Is it possible to take feed-rss2.php and duplicate it to change the code to include pages instead of posts and call it by ?feed=my_custom_feed
?
EDIT BELOW:
http://jsfiddle.net/oscarj24/qWdqc/
This is the script that I am using get the <link>
tag from the item RSS. I want the pages to have an RSS feed unless anyone knows a different way of doing it without RSS. But the script above rotates the page every 30 seconds.
1 Answer
Feeds for post types are called with feed/?post_type=POSTTYPE
. For no obvious reasons this doesn’t work for the post type page
– you get the posts instead.
But there is a filter to fix that: 'pre_get_posts'
. Let’s use it:
add_action( 'pre_get_posts', 't5_pages_in_feed' );
/**
* Set post type to 'page' if it was requested.
*
* @param object $query
* @return void
*/
function t5_pages_in_feed( &$query )
{
if ( isset ( $_GET['post_type'] ) && $_GET['post_type'] === 'page' && is_feed() )
{
$query->set( 'post_type', 'page' );
}
}
Now you get the page feed at /feed/?post_type=page
.
Here is a plugin for that: T5 Page Feed