Afiseaza subscriberii prin Feedburner - varianta imbunatatita
Aug 14, 2008 Diverse
Acum ceva vreme explicam cum sa afisam numarul subscriberilor prin Feedburner fara sa folosim clicketul. Neajunsurile acelei metode erau ca pentru fiecare afisarea se cerea informatia necesara de la Feedburner si, uneori, pentru o perioada mai lunga de timp rezultatul era a big fat zero. Nu prea grozav, nu?
Varianta imbunatatita a fost creata de acest om si, in plus fata de cea anterioara face cache intr-un simplu fisier txt al datelor necesare. Timpul de refresh al cache se poate modifica relativ simplu, in codul de mai jos 21600s = 12h, dar puteti seta dupa plac. Un pic de customizare, daca doriti, and enjoy, people!
< ?
// definim feed, timpul de actualizare si fisierul txt de cache
$feedid = 'peugen';
$cache_time = '21600'; // in seconds (43200 = 24 hrs)
$feedburner_cache = 'feedburner_cache.txt' ;
// Make sure we cache data, so that we do not have to contact
// Feedburner for every request.
if (!file_exists($feedburner_cache) || (time() - $cache_time > filemtime($feedburner_cache))) {
$tmp = file_get_contents('http://api.feedburner.com/awareness/1.0/GetFeedData?uri=' . $feedid) ;
$fp = fopen($feedburner_cache,'w') ;
fputs($fp, $tmp) ;
fclose($fp) ;
}
// pull in data from cache
// $fp = fsockopen ($host, '80'); // (this also works)
$fp = fopen($feedburner_cache,'r') ;
if ($fp) {
while (!feof($fp) ) {
$xml .= fgets($fp,1024) ;
}
preg_match("/circulation=\"(\d+)\"/i", $xml, $circulation);
echo "<p>Am ". $circulation[1] . " de abonaţi la <a href='http://feeds.feedburner.com/peugen'>feed</a>. E complet, gratis, şi, mai ales, fără reclame. Tu ce mai aştepţi? </p>";
fclose($fp) ;
}else{
// fail silently
}
?>
Poate te mai intereseaza:
- Afişează numărul abonaţilor la feed prin Feedburner
- Cum să redirectezi feed RSS spre Feedburner
- Cum sa: Feedburner pentru blogul tau
- Wordpress ştie să facă cartofi prăjiţi
- Disable Hotlinking
Tags: feedburner, feedcount





August 14th, 2008 at 19:08
Multumesc pentru impartasirea informatiei. Chiar cautam zilele trecute asa ceva si in final am recurs la codul de pe site-ul feedburner.
August 19th, 2008 at 20:05
Intre timp, am gasit o metoda putin mai simpla, folosind [code]simplexml_load_file()[/code] . Un exemplu ar fi :
[code]
feed->entry['circulation'];
echo “Felicitari Eugen, ai {$subs} inscrisi”;
?>
[/code]