嗨,我有一个来自WP Blog的simplexml提要,但是似乎无法通过链接传递图像。
我在下面的*.php
和*.tpl
文件中粘贴了我的文件。我已经尝试了好几种方法,但是由于html中的图像源仍然为空,因此似乎无法显示图像。有人可以提供有效的代码吗?
我在PHP代码中有此代码:
public function hookDisplayFooter($params)
{
// Conf
$title = strval(Configuration::get('RSS_FEED_TITLE'));
$url = strval(Configuration::get('RSS_FEED_URL'));
$nb = (int) (Configuration::get('RSS_FEED_NBR')) ? (int) (Configuration::get('RSS_FEED_NBR')) : 5;
$cacheId = $this->getCacheId($this->name . '|' . date("YmdH"));
if (!$this->isCached($this->templateFile, $cacheId)) {
$rss_links = array();
if ($url && ($contents = Tools::file_get_contents($url))) {
try {
$xml = new SimpleXMLElement($contents);
$loop = 0;
if (!empty($xml->channel->item)) {
foreach ($xml->channel->item as $item) {
if (++$loop > $nb) {
break;
}
$rss_links[] = (array)$item;
}
}
} catch (Exception $e) {
Tools::dieOrLog($this->trans('Error: invalid RSS feed in "%module_name%" module: %message%', array('%module_name%' => $this->name, '%message%' => $e->getMessage()), 'Modules.Rssfeed.Admin'));
}
}
$this->smarty->assign(array(
'title' => ($title ? $title : $this->trans('RSS feed', array(), 'Modules.Rssfeed.Admin')),
'rss_links' => $rss_links
));
}
return $this->fetch($this->templateFile, $cacheId);
}
这在Smarty tpl文件中:
<div>
{if $rss_links}
<ul>
{foreach from=$rss_links item='rss_link'}
<div><img src="{$rss_link['image']}" width="50px" height="50px" ></div>
<li><div><a href="{$rss_link['link']}" title="{$rss_link['title']}" target="_blank">{$rss_link['title']} </a></li>
<a href="{$rss_link['link']}" class="more-blog">Continue Reading ></a></li><p> </p>
{/foreach}
</ul></div>
{else}
<p>{l s='No RSS feed added' d='Shop.Theme.Catalog'}</p>
{/if}