Recentemente tenho saido um pouco da minha zona de conforto (Java/Groovy) e me aventurado em outras águas, dentre elas, minha volta ao PHP. Em um projeto que estamos desenvolvendo, eu precisava ter acesso ao feed de um dos blogs (baseado no WordPress) que o compõe. Neste processo, acabei produzindo um snippet que, acredito, vale à pena compartilhar com vocês, pois é realmente MUITO simples.
echo "\n\t<div id=\"noticias\">"; $doc = new DOMDocument(); // carrego o conteúdo XML no meu objeto DOM. (o exemplo abaixo só vale para o formato atom) $doc->load("http://www.endereco_do_seu_blog.com/blog/?feed=atom"); // todos os posts se encontram dentro das tags 'entry' $entradas = $doc->getElementsByTagName("entry"); foreach ($entradas as $entrada) { // imprimo uma div chamada 'noticia', que conterá o sumário do meu blog echo "\n<div class=\"noticia\">"; $titulo = $entrada->getElementsByTagName("title"); // na realidade, só há um elemento <title> por <entry>, mas como sou preguiçoso... echo "\n\t<h2>".$titulo->item(0)->nodeValue."</h2>"; // o mesmo que disse para a tag <title> vale para <summary> $conteudo = $entrada->getElementsByTagName("summary"); echo "\n\t<div class=\"sumario\">".$conteudo->item(0)->nodeValue."</div>"; // e o mesmo também vale para a tag <link> $links = $entrada->getElementsByTagName("link"); $link = $links->item(0); echo "\n\t<div class=\"link\"><a href=\"".$link->attributes->getNamedItem("href")->nodeValue."\">Link</a></div>"; echo "\n</div>"; } echo "\n\t</div>";</pre>
E e só isto.
Valeu por compartilhar o código!
Esta é uma das vantagens da linguagem PHP, para algumas tarefas é absurdamente muito rápido desenvolver soluções usando ela. No caso do seu código agora eu só precisaria alterar ele para meu caso colocar em um servidor web rodando php e pronto, já está funcionando.