如何在 WordPress 中显示 Twitter 关注者计数为文本

显示 Twitter 关注者的最简单方法是使用官方 Twitter 关注按钮。但是,如果您不想通过加载 twitter 的脚本来减慢您的网站速度怎么办?或者,如果您正在制作一些非常自定义的内容,并且需要将 twitter 关注者计数显示为文本而不是按钮,该怎么办。那么你会喜欢这个教程的。在本文中,我们将向您展示如何在您的 WordPress 网站上将您的 twitter 关注者数量显示为文本。

想知道我们将如何做到这一点?好吧,首先我们将创建一个 Twitter 应用程序,这样我们就可以正确使用 Twitter API v1.1 来拉取关注者数量。我们会将其缓存以优化性能,然后将其显示在网站上。准备好开始了吗?我们走吧。

您需要做的第一件事是为要显示关注者数量的网站创建一个 Twitter 应用程序。访问Twitter Developers 网站并使用您的 Twitter 帐户登录。登录后创建一个新的应用程序。

创建一个新的 Twitter 应用程序

在下一个屏幕上为您的应用程序提供一个名称,这可以是任何内容,最好是您网站的标题。为您的应用提供描述,这可能与您的博客或任何您想要的描述相同。在网站字段中输入您的 WordPress 网站的 URL,例如:https://www.wpbeginner.com。

在回调 URL 字段中也输入相同的 URL。填写表格后,点击页面底部的创建您的 Twitter 应用程序按钮。

这将创建一个新的 Twitter 应用程序供您使用。在下一页上,单击创建我的访问令牌按钮。这将向您显示您的授权令牌已创建的通知。

在您的 Twitter 应用程序页面上,下一步我们只需要 Consumer Key 和 Consumer Secret。

复制以下代码并将其粘贴到您的主题functions.php文件或特定于站点的插件中。将 Consumer Key 和 Consumer Secret 变量替换为您的 Consumer Key 和 Secret。

function getTwitterFollowers($screenName = ‘wpbeginner’){    // some variables    $consumerKey = ‘YOUR_CONSUMER_KEY’;    $consumerSecret = ‘YOUR_CONSUMER_SECRET’;    $token = get_option(‘cfTwitterToken’);      // get follower count from cache    $numberOfFollowers = get_transient(‘cfTwitterFollowers’);      // cache version does not exist or expired    if (false === $numberOfFollowers) {        // getting new auth bearer only if we don’t have one        if(!$token) {            // preparing credentials            $credentials = $consumerKey . ‘:’ . $consumerSecret;            $toSend = base64_encode($credentials);              // http post arguments            $args = array(                ‘method’ => ‘POST’,                ‘httpversion’ => ‘1.1’,                ‘blocking’ => true,                ‘headers’ => array(                    ‘Authorization’ => ‘Basic ‘ . $toSend,                    ‘Content-Type’ => ‘application/x-www-form-urlencoded;charset=UTF-8’                ),                ‘body’ => array( ‘grant_type’ => ‘client_credentials’ )            );              add_filter(‘https_ssl_verify’, ‘__return_false’);            $response = wp_remote_post(‘https://api.twitter.com/oauth2/token’, $args);              $keys = json_decode(wp_remote_retrieve_body($response));              if($keys) {                // saving token to wp_options table                update_option(‘cfTwitterToken’, $keys->access_token);                $token = $keys->access_token;            }        }        // we have bearer token wether we obtained it from API or from options        $args = array(            ‘httpversion’ => ‘1.1’,            ‘blocking’ => true,            ‘headers’ => array(                ‘Authorization’ => “Bearer $token”            )        );          add_filter(‘https_ssl_verify’, ‘__return_false’);        $api_url = “https://api.twitter.com/1.1/users/show.json?screen_name=$screenName”;        $response = wp_remote_get($api_url, $args);          if (!is_wp_error($response)) {            $followers = json_decode(wp_remote_retrieve_body($response));            $numberOfFollowers = $followers->followers_count;        } else {            // get old value and break            $numberOfFollowers = get_option(‘cfNumberOfFollowers’);            // uncomment below to debug            //die($response->get_error_message());        }          // cache for an hour        set_transient(‘cfTwitterFollowers’, $numberOfFollowers, 1*60*60);        update_option(‘cfNumberOfFollowers’, $numberOfFollowers);    }      return $numberOfFollowers;}

现在将这行代码添加到您想要显示 Twitter 关注者数量的主题模板中。这可以在 sidebar.php、header.php 或基本上任何你喜欢的地方。

而已。你完成了。我们希望本文能帮助您在 WordPress 中将 Twitter 关注者显示为文本。您还可以做许多其他事情来将 twitter 与您的 WordPress 网站集成。例如,您可以添加推特卡片,或在 WordPress 中显示最近的推文。要获得更多此类有用的提示,请考虑在 Twitter 上关注@wpbeginner。

资料来源:兹冯科比斯库普