0

我有一个脚本,当作为 php 独立运行时,它可以正常工作。它是 rss 提要的简单输出,但 rss 是由 dircaster 动态生成的。然而,当我把它变成一个 wordpress 插件时,它每次都无法工作。

这是经常出现的错误。有时按下刷新会使其工作。

Warning: array_slice() expects parameter 1 to be array, null given in /home/evilmer/public_html/frome.me/ffm/wp-content/plugins/fromefm-player/fromefm-player-plugin.php on line 50

Warning: Invalid argument supplied for foreach() in /home/evilmer/public_html/frome.me/ffm/wp-content/plugins/fromefm-player/fromefm-player-plugin.php on line 53

这是基于[ffmplayer show=xxx showno=xx]. 我没有包含整个短代码,因为我认为这不是必需的。

include_once(ABSPATH . WPINC . '/rss.php');         

$num_items = $showno;
$feedurl = 'http://fromefm.co.uk/archive/dircasterX.php?show='.$show;
$feed = fetch_rss($feedurl);
$items = array_slice ($feed->items, 0, $num_items); 
$list = "";

foreach ($items as $item ) 
{
$title = $item[title];
$mp3link   = $item[link];
$description    =  $item[description];
$list .= "$title - $description</br><audio src='$mp3link' preload='none'>    </audio>";}
    return "

<script>
  audiojs.events.ready(function() {
var as = audiojs.createAll();
  });
</script>

$list

";

第 50 行是:

$items = array_slice ($feed->items, 0, $num_items);

第 53 行是

foreach ($items as $item )

我确信它只是没有正确或每次都运行 DircasterX.php (dircaster.org) 脚本,但是当我独立使用它并使用 magpierss 而不是版本 (rss.php) 调用它时,它似乎工作正常内置在wordpress中。

独立版本目前在这里http://www.fromefm.co.uk/popupplayer/five.php?show=homelyremedies&showno=6它不是使用 wordpress 简码而是从中获取变量$_get

这里有插件的演示安装(请忽略 fromfmplayer.js 上的 js 错误,因为它无关)http://frome.me/ffm/?page_id=48

4

1 回答 1

0

你得到的警告告诉你那$feed是空的。可能是因为fetch_rss($feedurl)它的结果没有成功。

于 2013-02-11T09:45:23.897 回答