web-dev-qa-db-ja.com

投稿タイプ 'page'のフィードを取得する方法

ページ用のフィードと投稿用のフィードを別々に取得しようとしています。投稿のフィードはそのままで完璧に機能します。

私はただ別のものが欲しいのですが、私はすべてのプラグインを試してみて約1週間まっすぐに検索しましたがそれでも解決策を見つけることができませんでした

Feed-rss2.phpを取得してそれを複製し、投稿の代わりにページを含むようにコードを変更して?feed=my_custom_feedで呼び出すことは可能ですか?

以下の編集:

http://jsfiddle.net/oscarj24/qWdqc/ /

これは私が使っているスクリプトで、アイテムのRSSから<link>タグを取得しています。誰かがRSSなしでそれをする別の方法を知らない限り、私はページにRSSフィードを持たせたいです。しかし、上記のスクリプトは30秒ごとにページを回転させます。

3
Alcatraz

投稿タイプのフィードはfeed/?post_type=POSTTYPEで呼び出されます。明白な理由もなく、これは投稿タイプpageでは機能しません - 代わりに投稿を取得します。

しかし、それを修正するためのフィルタがあります:'pre_get_posts'。それを使ってみましょう:

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' );
    }
}

これで/feed/?post_type=pageにページフィードが入ります。

これはそのためのプラグインです: T5ページフィード

2
fuxia