Проблема с использованием функции fetch_feed и массива URL-адресов фидов - PullRequest
0 голосов
/ 20 апреля 2011

Я объединяю несколько RSS-каналов из профиля пользователя в Wordress, где RSS-канал предлагает вводимые пользователем данные в каждой строке.Я использую функцию implode для создания массива с помощью RSS-каналов, используя функцию wordpress fetch_feed для получения сообщений.Но по какой-то проводной причине сообщения с одного URL не отображаются.Но когда я создаю массив с такими же URL-адресами вручную, это работает!Вот код, который вы можете увидеть сами.

//array by explode
if($author->feeds){
                 $urlArray = explode("\r", $author->feeds);
             }
//manually created array     
    $mArray = array('http://lakeview.citystirchicago.com/feed/', 'http://citystir.com/feed/');

down in the page

     if($author->feeds){
                        if(function_exists('fetch_feed')){
                            include_once(ABSPATH . WPINC . '/feed.php');
                            $feed = fetch_feed($array);
                            if (!is_wp_error( $feed ) ){
                                $limit = $feed->get_item_quantity(8);
                                $items = $feed->get_items(0, $limit);
                                if(!$items){
                                    echo 'Problem loading feed.';
                                } else {
                                    ?>
                                    <ul id="activity_feed">
<?php
foreach ($items as $item):
//do stuff
endforeach;
?>

Вы можете проверить два экземпляра по этим двум URL.Я напечатал $ mArray и $ urlArray оба.Массив, созданный вручную $ mArray, показывает сообщения из второй ссылки (Новое тестовое сообщение), в то время как массив by explode $ urlArray не равен Оба одинаковы, но результат различен!:

Использование $ mArray: http://citystir.com/author/designdons/

Использование $ urlArray: http://citystir.com/author/designdons/?test=1


Решено: пришлось изменить разделитель разнесения "\ r" на "\ r \ n".Возможно, мне придется найти более эффективный способ взорваться.Спасибо!

1 Ответ

1 голос
/ 01 июня 2011

Изменение разделителя разнесения "\ r" на "\ r \ n" решило проблему.

...