0

誰かが私を解決するのを手伝ってくれることを望んでいる小さな問題があります。

以下にコピーしたのは、私のデータベース モデルに移動し、URL とフィード タイプを含む配列を返すコードです。ユーザーは、Twitter 名、ブロガー サイトなどを使用したかどうかを入力します。

ただし、このデータを simplepie で解析するには、URL の配列を渡す必要があります...そして、「タイプ」オプションが失われます。とにかく、ユーザーが特定の種類のフィードを選択した場合に特定のアイコンを表示できるように、これを simplepie アイテムに追加できますか?

$feed = $this->profile_model->get_module_feed();

    $feedarr = array();
    foreach($feed['data'] as $feeds) {
        if ($feeds['type'] == 1 ) {
            $i = "http://api.twitter.com/1/statuses/user_timeline.rss?screen_name=" . $feeds['rss'];
        }
        if ($feeds['type'] == 2 ) {
            $i = "http://search.twitter.com/search.atom?q=" . $feeds['rss'];
        }
        if ($feeds['type'] >= 3 ) {
            $i = $feeds['rss'];
        }

        $d = $feeds['type'];

        //else $i = $feeds['rss'];

        echo $i . " " . $d . "<br />";

        array_push($feedarr, $i);
    }

    $this->simplepie->set_feed_url($feedarr);
    $this->simplepie->enable_cache(false);
    $this->simplepie->init();
    $this->simplepie->handle_content_type();


    $data = $this->simplepie;

    foreach($data->get_items() as $item) { ?>
        <h2><a href="<?php echo $item->get_permalink(); ?>"><?php echo $item->get_title(); ?></a></h2>
        <p><?php echo $item->get_description(); ?></p>
        <p><small>Posted on <?php echo $item->get_date('j F Y | g:i a'); ?></small></p>
    <?php


    }


    }
}


?>

たとえば、$feed['type'] が 1 の場合、1 に関連付けられた画像を表示したい

私は少し困惑しているので、誰かが助けてくれることを願っています!

4

1 に答える 1

0

個々のフィード アイテムのfeedプロパティを使用してサブスクライブ URL を取得し、フェッチに使用したフィード URL と一致させることができます。簡単な例を次に示します。

// array with unique feed url => feed type (icon)
$feed_types = array(
    'http://feed.one.com/' => 'type1',
    'http://feed.two.com/' => 'type2',
);

$pie = new SimplePie;
$pie->set_feed_url(array_keys($feed_types));
$pie->enable_cache(false);
$pie->init();
$pie->handle_content_type();

foreach ($pie->get_items() as $item) {
    $feed_url = $item->feed->subscribe_url();
    $type = isset($feed_types[$feed_url]) ? $feed_types[$feed_url] : 'unknown type';
    print $type;
}

フィードの結果に埋め込まれたフェッチに同じ URL を使用する限り、subscribe_ul()メソッドの結果は で使用される URL と一致するはずset_feed_url()です。

于 2012-08-01T20:05:38.377 に答える