Что именно set_item_limit делает в Simplepie? - PullRequest
0 голосов
/ 08 февраля 2011

Я хочу спросить что-то конкретное. Я прочитал руководство по SimplePie, но все еще в замешательстве. Я пытаюсь смешивать элементы из разных каналов, но так как я передаю URL каналов через случайную функцию объекту SimplePie каждый раз, когда канал захватывается и анализируется, всегда его первый элемент представляется Simplepie, и в результате я много раз тот же элемент того же канала. Я использую set_item_limit, чтобы представить один элемент на канал.

Так что я хочу спросить? Set_item_limit, если я правильно понял, позволяет пользователю циклически просматривать все элементы канала, но показывает только число, указанное пользователем в функции?

Если я прав, могу ли я использовать set_item_limit (1), чтобы показывать одну статью в ленте, но каждый раз другой элемент, а не самый новый?

1 Ответ

0 голосов
/ 21 мая 2011

set_item_limit() определяет, сколько каналов будет доступно для показа.

    function fetch_feed($urls, $limit = 3) {
        require_once('lib/simplepie/simplepie.inc');

        $feed = new SimplePie();
        $feed->set_feed_url($urls);
        $feed->set_item_limit($limit);
        $feed->enable_cache(true);
        $feed->set_cache_duration(100);
        $feed->init();
        $feed->handle_content_type();   

        return $feed;
    }

$urls = array('feed_link_1', 'feed_link_2', 'feed_link_3');

$feed = fetch_feed($url, $limit = 5);

foreach($feed as $item){
   // do stuff with the item. This is the single feed item.
}

Вот функция, которую я использую для получения каналов. Вы можете увидеть использование функции set_item_limit();. Спасибо!

...