№ 1978 В разделе
Programming
от April 2nd, 2010,
В подшивках: PHP
Как и обещал, показываю свой скрипт для показа записей из микроблога на Identi.ca. Он получает данные в JSON, кеширует их (в данном случае 5 минут) и ограничивает количество записей (если $qaikus_count > 0). Скрипт будет также работать для Qaiku и Twitter. С помощью шаблонов скрипт легко встраивается в WordPress (что собственно я и сделал). Если надо получать личные записи, то необходимо просто добавить HTTP авторизацию и изменить url (например, http://identi.ca/api/statuses/user_timeline.json).
<h2>Микроблог нашего сообщества</h2> <p> <? $qaikus_count=5; $filename = 'qaiku-cache'; if (time() - filemtime($filename) > 300) { //освежаем файл $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, "http://identi.ca/api/statusnet/groups/timeline/utr.json"); curl_setopt($ch, CURLOPT_HEADER, false); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $qaikus = curl_exec($ch); curl_close($ch); file_put_contents($filename,serialize($qaikus)); } else { //берем кеш $qaikus = unserialize(file_get_contents($filename)); } $qaikus = json_decode($qaikus, true); if (count($qaikus)>0) { if ($qaikus_count>0) $qaikus = array_slice($qaikus,0,$qaikus_count); $qaikus_count=0; echo '<div class="qaikus">'; foreach ($qaikus as $qaiku) { $qaiku['text'] = str_replace('!utr','',$qaiku['text']); ?> <div class="qaiku"> <div class="qaiku_text"> <a href="<?=$qaiku['user']['url']?>" title="< ?=$qaiku['user']['name']?>"> < ?=$qaiku['user']['screen_name']?></a>: < ?=$qaiku['text']?></div> <div class="qaiku_date">< ?=$qaiku['created_at']?></div> </div> < ? } echo '</div>'; } else { echo "Записей не обнаружено. Скорее всего это какой-то косяк."; } ?> </div></p>
Fortune cookie: A rapturous young fellatrix One day was at work on five pricks. With an unholy cry She whipped out her glass eye: "Tell the boys I can now take on six."
Leave a Reply