“últimos Post” em um site estático
-
Administro um site HTML estático, e criaremos um blog para complementá-lo. Como faço para criar um “últimos posts” (títulos com data) para colocar na coluna lateral da página inicial do site estático?
Alguém, por favor, conhece um script, php ou plugin que liste os feeds de um blog wordpress?
-
Você pode ler o feed gerado pelo seu blog utilizando PHP: http://br2.php.net/simplexml
cara us ao plugin Category Posts Widget 3.0+ o eltro widgets
Valeu as dicas. Darei uma fuçada nisso que me passaram. Qualquer coisa peço socorro.
Sem querer abusar da boa vontade de vocês: não tem algo que seja mais simples, onde simplesmente se coloque o endereço dos feeds rss do blog, e ele liste os títulos mais recentes no meu site estático?
Realmente não sou programador, então estou apanhando dos códigos que vocês me passaram, não estou conseguindo nada.
Utilize o código abaixo ele já esta pronto para listar os títulos e descrição dos posts, basta trocar o endereço do meu feed pelo seu e pronto.
Lembrando que para funcionar o arquivo deve ser .php e o servidor deve rodar PHP.
<?php /** * Ler Feed de um blog e apresentar título e descrição dos posts * * @author Leo Baiano <leobaiano@leobaiano.com> * @version 1.0 */ // Defino o endereço do Feed // Altere o endereço entre aspas para o endereço do seu feed $feed = "http://leobaiano.com/feed"; $xml = simplexml_load_file($feed); foreach($xml->channel->item as $posts) { ?> <h2> <a href="<?php echo $posts->link; ?>" title="<?php echo $posts->title; ?>"> <?php echo $posts->title; ?> </a> </h2> <small><?php echo $posts->description; ?></small> <?php } ?>Obrigado leobaiano!
Agora está muito mais fácil de trabalhar com os feed!
É nós parceiro, qualquer coisa volta por aqui!
Uma última pergunta: Como resolvo o problema de acentos zuados?
O código de Feeds funcionou, mas agora apresenta problemas de codificação de acentos. Tipo onde deveria aparecer “Edição” aparece “ediçõo”.
Tentei modificar CHARSET, inclusive do banco de dados. Quase destruí o blog, e não consegui arrumar.
Se este problema só aparece na página que lê o XML, o problema é a codificação deste arquivo.. o correto seria tê-lo em UTF-8, mas você pode experimentar a função utf8_decode() e ver se resolve.
Você criou um arquivo a parte e icluiu o código que te passei né? Se for este o caso use o código abaixo:
<?php /** * Ler Feed de um blog e apresentar título e descrição dos posts * * @author Leo Baiano <leobaiano@leobaiano.com> * @version 1.0 */ // Define o charset como utf-8 // O charset definido aqui deve ser o mesmo que o definido no wordpress // e consequentemente nos feeds header('Content-Type: text/html; charset=utf-8'); // Defino o endereço do Feed // Altere o endereço entre aspas para o endereço do seu feed $feed = "http://leobaiano.com/feed"; $xml = simplexml_load_file($feed); foreach($xml->channel->item as $posts) { ?> <h2> <a href="<?php echo $posts->link; ?>" title="<?php echo $posts->title; ?>"> <?php echo $posts->title; ?> </a> </h2> <small><?php echo $posts->description; ?></small> <?php } ?>De qualquer forma, o importante é incluir o charset igual o definido no wordpress, inclua o código abaixo e seja feliz, no meu teste aqui usei o UTF-8 e funcionou perfeitamente.
<?php // Define o charset como utf-8 // O charset definido aqui deve ser o mesmo que o definido no wordpress // e consequentemente nos feeds header('Content-Type: text/html; charset=utf-8'); ?>Obrigado Pessoal! Agora Funciona corretamente!
Uma última pergunta:
Com este código apresentado por leobaiano é possivel datar os posts (dd/mm)?pubDate é o nome do ‘negócio’ (me fujiu a palavra)
Tente <?php echo $posts->pubDate;?>
O enapupe esta correto, é o pubDate que trás a data do post, mas se imprimir diretamente a data vai sair em um formato não convencional então use o código abaixo para imprimir uma data padronizada:
<?php echo date("d-m-Y",strtotime($posts->pubDate)); ?>Valeu! Agora já posso encerrar o tópico.
Obrigado leobaiano, enapupe e ronaldy.
O tópico ‘“últimos Post” em um site estático’ está fechado para novas respostas.