Как показать среднее количество подписчиков Feedburner за последние 7 дней без плагинов

Не секрет, что многие для трансляции RSS фида используют сервис Feedburner. Лично мне использование постороннего сервиса для трансляции RSS кажется излишним, но разубеждать никого не буду. Пользуются — значит им это нужно (нравится). Так вот самой главной штукой считается количество подписчиков в Feedburner. Но просто выводить количество подписчиков неинтересно. Более интересным является вывод среднего количества подписчиков за последние несколько дней. Для того, чтобы вывести это количество, не обязательно устанавливать плагины — можно это сделать и самостоятельно, используя несложный код.

В файл functions.php (он находится а папке в темой оформления блога) сразу после строчки <?php вставьте такой код:

function get_average_readers($feed_id,$interval = 7){
	$today = date('Y-m-d', strtotime("now"));
	$ago = date('Y-m-d', strtotime("-".$interval." days"));
	$feed_url="https://feedburner.google.com/api/awareness/1.0/GetFeedData?uri=".$feed_id."&dates=".$ago.",".$today;
	$ch = curl_init();
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
	curl_setopt($ch, CURLOPT_URL, $feed_url);
	$data = curl_exec($ch);
	curl_close($ch);
	$xml = new SimpleXMLElement($data);
	$fb = $xml->feed->entry['circulation'];

	$nb = 0;
	foreach($xml->feed->children() as $circ){
		$nb += $circ['circulation'];
	}

	return round($nb/$interval);
}

Этот код создает функцию, которая вычисляет среднее количество подписчиков за последние 7 дней, ориентируясь на ваш адрес RSS, транслируемый из блога в Feedburner. Чтобы ее использовать, вставьте следующий код в то место, где вы хотите выводить получаемую цифру:

 

tiaurus

Автор n-wp.ru — блога о WordPress для новичков.

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

  1. volos_86

    А пример где посмотреть? или хотя бы скриншот..

    Ответить
  2. volos_86

    ЗАявку оставил, но по большому счёту, вряд ли что нибудь изменится глобально. Почта на mail.ru отвратительная. Держу там ящик только для того, чтобы не светить гмейловскмй

    Ответить
  3. Дмитрий

    На мой взгляд некорректный подсчет. Например, если перейти по Catswhocode из примера, то увидим:

    <rsp stat="ok">
    <!--
    This information is part of the FeedBurner Awareness API. If you want to hide this information, you may do so via your FeedBurner Account.
    -->
    <feed id="evn826e4g7mra0krmqkujnfl44" uri="Catswhocode">
    <entry date="2010-09-06" circulation="0" hits="0" reach="0"/>
    </feed>
    </rsp>

    Т.е. circulation=»0″, а значит этот 0 будет считаться в семидневный интервал. Из-за этого статистика будет неверной из-за отсутствия данных за текущей день.

    Ответить
    1. Ну текущий день еще не окончен, и не ясно, какой результат он покажет. Поэтому может и к лучшему, что не до конца подсчитанные данные не учитываются?

      Ответить