web-dev-qa-db-fra.com

Comment obtenir un flux pour le type de message 'page'?

J'essaie d'obtenir un flux pour les pages et un flux distinct pour les publications. L'alimentation pour les messages fonctionne parfaitement telle quelle.

Je veux juste un autre mais j'ai essayé tous les plugins et cherché pendant environ une semaine d'affilée et je ne pouvais toujours pas trouver de solution

Est-il possible de prendre feed-rss2.php et de le dupliquer pour changer le code afin d'inclure des pages au lieu de posts et de l'appeler par ?feed=my_custom_feed?

EDIT CI-DESSOUS:

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

C'est le script que j'utilise pour obtenir la balise <link> à partir de l'élément RSS. Je veux que les pages aient un flux RSS à moins que quelqu'un ne connaisse une manière différente de le faire sans RSS. Mais le script ci-dessus fait pivoter la page toutes les 30 secondes.

3
Alcatraz

Les flux pour les types de publication sont appelés avec feed/?post_type=POSTTYPE. Pour des raisons non évidentes, cela ne fonctionne pas pour le type de message page - vous obtenez les messages à la place.

Mais il existe un filtre pour résoudre ce problème: 'pre_get_posts'. Utilisons-le:

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

Vous obtenez maintenant le fil d’alimentation à /feed/?post_type=page.

Voici un plugin pour ça: T5 Page Feed

2
fuxia