No início poucos acessavam o fórum então para interagir o meu site com o fórum coloquei uma caixa com com os últimos post do fórum....
O resultado foi instantâneo, a visitação do fórum multiplicou por 8.
Abaixo segue o modelo da caixa que inseri pouco antes do rodapé,
Mais embaixo o código PHP para acessar o fórum phpBB e capturar o último posts de cada tópico.
Como pode ser notado, a pesquisa é feita com um SELECT dentro do outro para que seja primeiramente ordenados os post por ordem cronológica e depois agrupado para obter apenas 1 (o último) post de cada Tópico.
Agora no fórum
Último Tópico postado
início do texto do último tópico do fórum....
penultimo Tópico postado
início do texto do último Post do penultimo tópico....
Outro topico
ultimo post de outro tópico.....
Outro topico
ultimo post de outro tópico.....
Outro topico
ultimo post de outro tópico.....
Outro topico
ultimo post de outro tópico.....
<?php
//Conectando ao banco de dados, não é necessário se já conectado
mysql_connect ("localhost", "USUARIO", "SENHA") or die('Não foi possível conectar ao banco de dados devido: ' . mysql_error());
//Selecionando o Banco de dados do phpBB
mysql_select_db ("site_phpbb");
$resultado = mysql_query("
SELECT topic_id, forum_id, post_time, post_subject, post_text, topic_id, forum_id, COUNT(*) AS total
FROM (
SELECT topic_id, forum_id, post_time, post_subject, post_text, topic_id, forum_id, 1 AS total
FROM posts
WHERE post_approved = 1
ORDER BY post_time DESC
) as zz
GROUP BY zz.topic_id, zz.forum_id
ORDER BY post_time DESC LIMIT 6
");
echo "<div class='forum'> <h2>Agora no fórum</h2>";
while($row = mysql_fetch_array($resultado)){
if(substr($row['post_subject'],0,3)=="Re:"){//Remove o termo Re: do título do post
$topico = substr($row['post_subject'],3);
}else{
$topico = $row['post_subject'];
}
echo "<a href='http://forum.meusite.com.br/viewtopic.php?f=".$row['forum_id']."&t=".$row['topic_id']."&start=".(floor($row['total']/10)*10)."' target='_blank'><h3>".$topico."</h3><p>".substr($row['post_text'],0,40).".....</p></a>";
}
echo "</div>";
?>
Nenhum comentário:
Postar um comentário