我已经实现了一种无需插件即可显示推特提要的方法。它工作了几个星期(甚至几个月,在另一个网站上),但现在给我带来了麻烦。以下是错误:
致命错误:调用未定义的方法WP\\u error::get\\u item\\u quantity()。。。家php在线27
第27行:$maxitems=$rss->get\\u item\\u quantity(3);
<?php
include_once(ABSPATH . WPINC . \'/feed.php\');
$rss = fetch_feed(\'https://api.twitter.com/1/statuses/user_timeline.rss?screen_name=urbanpalatela\');
$maxitems = $rss->get_item_quantity(3);
$rss_items = $rss->get_items(0, $maxitems);
?>
<ul>
<?php if ($maxitems == 0) echo \'<li>No items.</li>\';
else
// Loop through each feed item and display each item as a hyperlink.
foreach ( $rss_items as $item ) : ?>
<li>
<a href=\'<?php echo $item->get_permalink(); ?>\'>
<?php echo str_replace(\'UrbanPalateLA: \', \'•\', $item->get_title()); ?>
</a>
</li>
<?php endforeach; ?>
</ul>
你知道是什么导致了这个错误吗?
SO网友:Wyck
twitter url似乎无效。您可以双重防止此错误,因为它依赖于第三方。
使用前先检查提要是否为空$maxitems
, 之后不会。
例如:
include_once(ABSPATH . WPINC . \'/feed.php\');
$rss = fetch_feed(\'https://api.twitter.com/1/statuses/....\');
if ($rss->get_item_quanity != 0) {
$maxitems = $rss->get_item_quantity(3);
//rest of your code..
} else {
echo \'No feed available\'; }
编辑:Eric的示例可能更好,因为它将由WP使用
if (!is_wp_error( $rss ) )
其次,您的twitter url没有返回任何内容,因此出现错误,这可能是因为API已更改,您将不得不参考twitter文档,https://dev.twitter.com/docs/api/1.1/get/statuses/user_timeline