[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.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 formehttp://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, " " ; 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" ; 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 suivantCode #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 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 démonstration mumuri forum.ashots.org mumuri Messages : 13 435