Insérer une syndication RSS ou JS dans un forum

Un article de Wiki Maximus CMS.

Comment insérer une syndication RSS et/ou Javascript dans un forum existant ?

Cette question postée sur ce forum demande quelques modifications dans le forum phpbb embarqué dans Maximus

J'ai réalisé ce mode d'emploi car il peut être utilisé par tout un chacun mais il est bon de savoir que cela est un peu un montage à l'arrache car non doté d'administration, et nécessitera une intervention directement sur des fichiers en dur en cas de modifications !!

Cette démonstration d'intégration RSS dans les forum reste toutefois intéressante à plus d'un titre :)

Alors passon à l'action ... Nous allons devoir modifier deux fichiers pour ce faire :

  • modules/Forums/viewforums.php
  • modules/Forums/template/VOTRE TEMPLATE/viewforum_body.tpl


Modification du premier fichier: viewforums.php


Recherchez ceci:

 $template->assign_vars(array(
       'FORUM_ID' => $forum_id,
       'FORUM_NAME' => $forum_row['forum_name'],


Remplacez le par ceci:

$template->assign_vars(array(
       'L_RSS' => $rss,
       'FORUM_ID' => $forum_id,
       'FORUM_NAME' => $forum_row['forum_name'],

Juste avant ce code mettez ce bout de code:


 $f = $HTTP_GET_VARS['f'];
 if ( $f == 19 ) {
	  $rss = "<script language='JavaScript1.1' type='text/javascript'    src='http://www.generation-nt.com/export/exportnews.htm'></script>";
    } else {    $rss = "Aucun fil RSS en rapport...";     }


Bien évidemment dans cette exemple le forum numéro 19 affichera le flux RSS demandé et seulement celui ci, si vous désirez afficher des flux différents pour d'autres forums à vous d'adapter ce code ! Voici un petit exemple de ce que l'on pourrait envisager le cas échéant:


 $f = $HTTP_GET_VARS['f'];
 if ( $f == 19 ) {
	  $rss = "<script language='JavaScript1.1' type='text/javascript'    src='http://www.generation-nt.com/export/exportnews.htm'></script>";
 elseif ( $f == 5 ) {
	  $rss = "<script language='JavaScript1.1' type='text/javascript'    src='http://www.generation-nt.com/export/AUTREexportnews.htm'></script>";
    } else {    $rss = "Aucun fil RSS en rapport...";     }


Voilà, c'est simple, à l'arrache mais ... fonctionnel :)


Modification du second fichier: viewforum_body.tpl

On a modifié le fichier PHP, mais ce n'est pas tout (cela fait parti des plaisirs de phpbb, pour faire quelque chose il faut modifier 36 trucs :( , passons :) )


Alors:


Recherchez ceci:


<table border="0" cellpadding="4" cellspacing="1" width="100%" class="forumline"> <tr> <th colspan="2" align="center" height="25" class="thTop" nowrap="nowrap"> {L_TOPICS} </th> <th width="50" align="center" class="thTop" nowrap="nowrap"> {L_REPLIES} </th> <th width="100" align="center" class="thTop" nowrap="nowrap"> {L_AUTHOR} </th> <th width="50" align="center" class="thTop" nowrap="nowrap"> {L_VIEWS} </th> <th align="center" class="thTop" nowrap="nowrap"> {L_LASTPOST} </th> </tr>


Ajoutez ce code juste avant:


<table border="0" cellpadding="4" cellspacing="1" width="100%" class="forumline"> <tr><th> mon titre </th></tr> <tr> <td class="row1" align="left" valign="middle" width="100%"> {L_RSS} </td></tr></table>



Modifiez mon titre par ce que vous voulez bien évidemment !!


Ré-uplodez ces deux fichiers sur votre FTP et le tour est joué


Ce simili hack, est plutôt un hack 'à la barbare' mais quand on aime on ne compte pas et l'essentiel est d'y parvenir, ce qui est chose faite !!!

Vous avez d'autres requêtes, faites vos demandes sur les forum de www.php-maximus.org, si celle ci se révèle sympa elle aura de forte chance de se retrouver dans ce Wiki :)


Cyril 20 jan 2007 à 14:49 (CET)