Как вывести на сайте число фолловеров Твиттера

Как вывести на сайте число фолловеров Твиттера

11 апреля 2017

Существует несколько способов решения этой задачи, об одном из них я уже рассказывал. Сегодня я покажу ещё один, более простой способ получения количества фолловеров без аутентификации приложения и генерации токена.

SMO — одна из ключевых рубрик моего блога, потому что современный сайт без интеграции с соцмедиа выглядит, как минимум, странно. Я стараюсь периодически рассказывать о некоторых нюансах оптимизации сайтов под социальные сети.

Задача решается с помощью виджета, а точнее его данных, которые открыто передаются в обычном JSON.

https://cdn.syndication.twimg.com/widgets/followbutton/info.json?screen_names=username

Что проверить, вместо username подставьте имя любого рабочего Твиттера. Например, для моего Твиттера specotdel, скрипт вернёт такой массив:

[{"following":false,"id":"40255119","screen_name":"specotdel","name":"Ivan Danilin","protected":false,"followers_count":740,"formatted_followers_count":"740 followers","age_gated":false}]

Как видим, followers_count — это и есть число фолловеров, остаётся только разобрать JSON и выдернуть followers_count. Я покажу два способа получения числа фолловеров с помощью jQuery и PHP.

1. jQuery

Комментировать здесь особо нечего, выполняем асинхронный HTTP-запрос jQuery.ajax(), вместо specotdel ставим нужный юзернейм.

<h3>Количество фолловеров: <strong></strong></h3>

<script type="text/javascript">

	$.ajax({
		url: "https://cdn.syndication.twimg.com/widgets/followbutton/info.json?screen_names=specotdel",
		dataType : 'jsonp',
		crossDomain : true
	}).done(function(data) {
		$("h3 strong").text(data[0]['followers_count']);
	});

</script>

2. PHP

Простой PHP-скрипт читает JSON-файл, функцией json_decode() декодирует его, парсит и выводит всё то же значение followers_count.

$data = file_get_contents('https://cdn.syndication.twimg.com/widgets/followbutton/info.json?screen_names=specotdel'); 
$parsed =  json_decode($data,true);
$tw_followers =  $parsed[0]['followers_count'];
echo $tw_followers;

Можно пойти немного дальше и создать функцию, которая будет выводить количество фолловеров. Например, в Вордпресс в файле функций functions.php активной темы определяем функцию tw_fans_count().

function tw_fans_count($twID) {
	$json_string = file_get_contents('https://cdn.syndication.twimg.com/widgets/followbutton/info.json?screen_names='.$twID); 
	$json = json_decode($json_string,true);
	return $json[0]['followers_count'];
}

Теперь в любом месте темы к ней можно обратиться через переменную $twID и вывести число фолловеров любого аккаунта Твиттера.

Например, так:

echo tw_fans_count('specotdel');

Способ не идеальный, рано или поздно лавочка прикроется, я думаю. Но пока работает, значит можно пользоваться.

Подписываемся на канал Danilin.biz в Telegram, все самое интересное теперь там.
Иван Данилин
Автор: Иван Данилин

Практикующий веб-разработчик, специализируюсь на платформе Вордпресс.

Добавить комментарий

Лучшие премиум-темы для Вордпресс с пожизненной поддержкой