从RSS显示图像

时间:2013-05-30 23:49:50

标签: image rss simplepie

我通过SimplePie获得此Feed项目:

        <item>
            <guid isPermaLink="false">tncms-asset-7f55e8da-c801-11e2-9a4d-001a4bcf887a</guid>
            <title>Parts of old span may be used in bridge repair</title>
            <author>Author Person</author>                    
            <link>http://www.mysite.com/a.html</link>
            <description><![CDATA[Description Here.]]></description>
            <pubDate>Tue, 28 May 2013 18:45:00 -0700</pubDate>

            <enclosure url="http://mysite.com/happyLilPic.jpg" length="512" type="image/jpeg" />

        </item>

除了带有以下内容的图片外,我还可以显示其他所有内容:

    <?php
            foreach ($feed->get_items() as $item):

    ?>

    <div class="item">
        <h3><a href="<?php echo $item->get_permalink(); ?>"><?php echo $item->get_title(); ?></a></h3>
        <p><?php echo $item->get_description(); ?></p>

         <?php echo "<img src=\"" . $item->get_enclosure['url'][0] . "\">"; ?>
         <br><br>

    </div>

    <?php endforeach; ?>

我对机箱做错了什么???

1 个答案:

答案 0 :(得分:1)

get_enclosure()返回包含SimplePie_Enclosure对象的单个数组位置。文档以这种方式显示:

if ($enclosure = $item->get_enclosure())
{
   echo $enclosure->embed();
}

虽然使用<embed>标签,但这不是你想要的。 Enclosure Object的文档列出了许多方法。我认为你想要的是get_link(),所以你会改变你的图像标签代码:

if ($enclosure = $item->get_enclosure())
{
   echo "<img src=\"" . $enclosure->get_link() . "\">";
}