显示推特关注者数不起作用

时间:2011-07-18 作者:japanworm

无论我尝试什么,我似乎都无法让代码片段发挥作用,从而显示推特的关注者数量。我尝试了各种方法,因为我使用的插件根本没有显示推特号码,所以我需要寻找其他方法。

当我尝试的时候this snippet, 例如,我收到以下错误消息:http://pastebin.com/iif9g35a

有人知道这里出了什么问题吗?我觉得奇怪的是,“Suscribers to text”插件一开始就没有显示以下内容的数量——否则我就不必寻找替代品了。

4 个回复
最合适的回答,由SO网友:Rarst 整理而成

哎哟,这个片段很古老(我是它的作者,更确切地说是根据其他片段改编成推特的)。我会强烈考虑使用一些更新的解决方案。

我后来制作了更新的从头开始编写的版本,试试吧http://www.rarst.net/script/twitter-counts-wordpress/

SO网友:Chip Bennett

两个问题:

您使用的代码需要管理员角色功能fopen() 您的主机可能会禁用包装器,您可能应该使用wp_remote_get() 而不是file_get_contents(). 我还建议缓存结果,而不是将其存储为DB选项。

但是,让我们从基础开始。我假设preg_match() WP初学者代码的一部分工作正常,并将其重新包装为更灵活的函数。

试着把这个放进去functions.php (更改$user = \'wpbeginner\' 您自己的用户名):

<?php
function mytheme_get_twitter_follower_count( $user = \'wpbeginner\' ) {
    $twitter_url = \'http://twitter.com/users/show.xml?screen_name=\' . $user;
    $twitter_data = wp_remote_get( $twitter_url );
    $xml = $twitter_data[\'body\'];
    $twitter_followers = \'0\';
    if (preg_match(\'/followers_count>(.*)</\',$xml,$match)!=0) {
        $twitter_followers = $match[1];
    }
    return $twitter_followers;
}
?>
然后,无论您想在哪里输出字符串,请将其放入模板文件中:

<p>Twitter Followers: <?php echo mytheme_get_twitter_follower_count(); ?></p>
(请注意,您可以通过调用mytheme_get_twitter_follower_count( \'username\' );.)

EDIT

从错误消息中:

Twitter关注者:致命错误:调用/hermes/bosweb25a/b155/ipg中未定义的函数mytheme\\u get\\u Twitter\\u follower\\u count()。缩放japancom/wp-content/plugins/php-code-widget/execphp。php(44):第1行的eval()\'d代码

你把mytheme_get_twitter_widget_follower_count() 函数调用mytheme_get_twitter_widget_follower_count() 功能

SO网友:Milo

该代码段可能有效,但您尚未正确实现它。

您将该示例中第一个代码部分的代码保存在哪里?你在哪里including 代码来自?

基本上,错误在于文件路径不正确,无法找到twitter.php 您试图包含的文件。

编辑-

如果推特。php文件位于主题目录的根目录中,请尝试将其包括在内,如下所示:

include( TEMPLATEPATH . \'/twitter.php\' );

SO网友:chrisguitarguy

如果文件位于主题文件夹中,请不要使用include, 尝试get_template_part. get_template_part( \'twitter.php\' );

结束

相关推荐

为什么我的Twitter小工具在我的主题中不起作用?

我在我的网站上安装了推特自己的小部件,效果很好。但是,在我的WP-powered博客上,包含了脚本,但没有呈现。我叫它在一个空的div 像这样:<?php include $_SERVER[\'DOCUMENT_ROOT\'].\'/twtr-widget.html\' ?> 但它在页面源代码中显示为HTML(我放“…”以节省空间):<script src=\"http://widgets.twimg.com/j/2/widget.js\"></script>