[phpBB] Lister les derniers messages ...

18.11.2006, 11:45 Pour lister les derniers messages de son forum phpBB sur sa page d'accueil, c'est trés simple. On agit en deux étapes.

agregateur rss

agregateur rss

agregateur rss


Etape 1 : installer un flux rss

La premiére étape consiste à installer un mod de flux rss, pour cela on utilise
RSS Content Syndicator

Aprés installation, vous devriez avoir un flux disponible sous cette forme
http://ensib.free.fr/rss.php

Etape 2 : installer un agrégateur

La seconde étape consiste à installer un agrégateur, pour cela il suffit d'installer magpierss

Et de mettre le dossier "magpierss", à la racine de son forum

Pour des problémes de compatibilité éventuelle, voila le zip utilisé
http://images.topflood.com/magpierss.zip

Ensuite dans votre code php, rajouter çà
http://images.topflood.com/last-posts.txt
Code<?php
function str_stop($string, $max_length){
if (strlen($string) > $max_length){
$string = substr($string, 0, $max_length);
$pos = strrpos($string, " &quot ;) ;
if($pos === false) {
return substr($string, 0, $max_length)." ...";
}
return substr($string, 0, $pos)." ...";
}else{
return $string;
}
}

//define('MAGPIE_CACHE_AGE',900);
require_once('magpierss/rss_fetch.inc');

$nbresultats = 6;
$rss = @fetch_rss("http://ensib.free.fr/rss.php?t=1&c=6&f=10&quot ;) ;

if (is_array($rss->items)) {
$rss->items = array_slice($rss->items, 0,$nbresultats );

foreach($rss->items as $items)
{
list($titre,$url,$desc,) = array_values($items);
$desc = trim(strip_tags($desc));
$titre = ucfirst($titre);
$desc = preg_replace("#(^|[\n ])([\w]+?://[\w\#$%&~/.\-;:=,?@\[\]+]*)#is", "", $desc);
echo '<span> <a href="'.$url.'" class="info" ><span><b>'.$titre.'</b>
'.str_stop($desc,300).'</span>'.str_stop($titre,17).'</a></span>
';
}

} ?>
Remarquez que vous pouvez personaliser le nombre de résultat via $nbresultats.Le css utilisé est le suivant
Code#infobulle{
/*position: absolute;
display:block;
visibility : hidden;
border: 1px solid #CCCCCC;
padding: 10px;
font-family: Verdana, Arial;
font-size: 0.7em;
background-color: Yellow;*/

position:absolute;
visibility : hidden;
display:block; top:1em; left:2em;
padding: 3px;
border:1px solid #184A7B;
background-color:#FFFFFF; color:#184A7B;
text-align: justify;
font-weight:none;

width: 200px;

}

/* liens pour infobulles */
.info,.infoLien{position:relative;}
.info{
font-family: tahoma;
font-size: 10px;
font-weight: normal;
color: 184A7B;
text-decoration: none;

}


.info:hover{ font-family: tahoma;
font-size: 10px;
font-weight: normal;
color: 628A17;
text-decoration: none; }

.info:hover{cursor:default;}
/* IE seulement pour que l'infobulle supperpose correctement les autres liens de la page */
html * .info:hover{z-index:1}
.info:visited{color :8 B96A7; }

/* paramètres de l'infobulle */
.info span,.infoLien span{position:absolute;padding:3px; width: 200px;text-align:center; background-color:#FFFFFF; color:#184A7B;
z-index:99;top:2em;left:-9999px; border:1px solid #184A7B; text-decoration: none;}
.info:hover span,.infoLien:hover span{left:2em;}


Voila ce que çà donne, remarquez que je suis rester sur le méme serveur, mais que ca marche aussi si votre site est délocalisé par rapport à votre forum.

Résultat

agregateur rss

agregateur rss

agregateur rss


démonstration
mumuri forum.ashots.org
mumuri
mumuri
Messages : 13 435

  • astuces de jeux vidéos
  • forum
  • allo ciné
  • dessin animé
  • avis livres
  • anime
  • actualité de jeux vidéos
  • avis films
  • smileys
  • séries télé
  • bourse
Tous droits réservés © 2008 . Top flood Crédits des logiciels tiers.   - en partenariat avec flood.fr .