O Technorati é um dos mais conhecidos agregadores de conteúdos de blogs em toda a web que pussui uma API.
No tutorial de hoje vou mostrar com é fácil usar a API do Technorati para mostrar o número de reacções (links) á tua página.
Para poderes usar a API do Technorati precisas da API key. Para isso tens de te registar no Technorati depois procura pela documentação da API e lá poderás obter a tua API Key.
Uma vez que já tens a tua API key cria uma constante usando a função define() que te permitirá passar a variável para outras funções sem teres de a declarar global ou escrever a API Key vezes sem conta.
Para definires a tua constante basta adicionares esta linha onde XXXXXXXX é obviamente a tua API Key:
< ?php define('TECHNORATI_KEY','xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'); ?>
No exemplo que se segue o código apresentado será para mostrar as recções para a página em questão.
1
2
3
4
5
6
7
8
9
10
11
12
13
| < ?php
function get_technorati_reactions($page=NULL){
$page = empty($page) ? 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'] : $page;
$apicall = 'http://api.technorati.com/cosmos';
$apicall .= '?key='.TECHNORATI_KEY;
$apicall .= '&url='.urlencode($page);
$apicall .= '&format=xml';
$result = simplexml_load_file($apicall);
return intval($result->document->result->inboundlinks);
}
?> |
O script faz isto de forma automática, caso queiras restar terás de alterar
$page =
empty($page) ? 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'] : $page;
para
empty($page) ? 'http://blue.muiomuio.net' : $page;
Neste caso usei o endereço do meu blog, podes usar o endereço que quiseres.
O script em cima são as funções para obter os resultados, falta agora mostra-los na página:
1
2
3
4
5
6
7
8
| < ?php
#Para a página que está a ser vista
echo 'Reacções: ', get_technorati_reactions();
#Usando a função para outra página que não a que está a ser visualizada
$count = get_technorati_reactions('http://muiomuio.net');
echo 'Muiomuio.net tem', $count ,' Reacções';
?> |
Este script vai buscar o número de reacções (links) no technorati que pode ser usado como medidor de popularidade.
Este tutorial vai ensinar como mostrar os leitores RSS do feedburner em texto. O script usa a API do Feedburner.
Podes ver um exemplo na Smashing Magazine na sidebar no topo direito onde usaram o script para criar um botão personalizado com o número de leitores RSS.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
| < ?php
//a linha que se segue vai buscar o numero de leitores a tua feed (feed count)
$whaturl="http://api.feedburner.com/awareness/1.0/GetFeedData?uri=http://feeds.feedburner.com/bluemuiomuio";
//inicializa o a sessão do Curl
$ch = curl_init();
//devolve o valor em vez de imprimir no browser
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
//especifica o URL
curl_setopt($ch, CURLOPT_URL, $whaturl);
//executa um fetch para ir buscar o valor dos leitores feed
$data = curl_exec($ch);
//Fecha a sessão do cUrl
curl_close($ch);
$xml = new SimpleXMLElement($data);
$fb = $xml->feed->entry['circulation'];
//finito
?> |
Agora para colocares o número de leitores na página basta fazeres um simples echo da variável $fb:
É importante relembrar que é necessário alterar o endereço da tua feed na variável $whaturl 
Embora muitos já usam o alexa rank para definir tops, estatutos, etc… mas pouca gente conhece o método de o usar sem ser através de aplicações já disponÃveis na net.
Neste tutorial vou mostrar como criar um script que devolve o valor do Alexa Rank para um determinado site. O script pode ser facilmente adaptado para incorporar outras funções mais úteis.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
| < ?
class alexa {
var $xml;
var $values;
var $alexa_address;
function alexa($alexa_address,$domain) {
$this->alexa_address = $alexa_address;
$this->xml = $this->get_data($domain);
$this->set();
}
function get_data($domain) {
$url = $this->alexa_address.'http://'.$domain;
$xml = simplexml_load_file($url) or die('Feed Indisponivel');
return $xml;
}
function set() {
$this->values['rank'] = ($this->xml->SD->POPULARITY['TEXT'] ? number_format($this->xml->SD->POPULARITY['TEXT']) : 0);
}
function get($value) {
return (isset($this->values[$value]) ? $this->values[$value] : '"'.$value.'" não existe.');
}
}
$domain = "blue.muiomuio.net";
$alexa_connector = new alexa('http://alexa.com/xml/dad?url=',$domain);
// estilo 1
echo '<div style="width:150px; height:80px;">Alexa Rank: '.$alexa_connector->get('rank').' <br /><span style="background:#efefef;"><a href="http://'.$domain.'">'.$domain.'</a></span></div>';
// estilo 2
echo '<div style="width:150px; height:80px;">'.$alexa_connector->get('rank').' <br /><img src="http://img171.imageshack.us/img171/1940/alexanl7.png" alt="alexa rank para '.$domain.'" title="'.$domain.' Alexa Rank" /></div>';
?> |
Wednesday July 30th 2008
Design
Para quem quer aprender a mexer no Adobe Illustrator CS 3 aqui está um curso gratuito online.
O programa supostamente é para 4 semanas mas que conseguem perfeitamente numa semana talvez nem tanto tempo.
O curso está em inglês.
Link: http://www.istockdiary.com/illustrator/learn-illustrator-cs3-in-30-days/