URL Rewriting sur un forum IPB : Problème au niveau du code

Consultez la formation URL Rewriting et sites dynamiques de WebRankInfo / Ranking Metrics

Philippe.G
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 41
Inscription: 6 Juin 2004

URL Rewriting sur un forum IPB : Problème au niveau du code

Message le Sam Juil 03, 2004 22:03

Salut à tous :)

J'aimerais beaucoup utiliser la réecriture d'URL sur un forum IPB. J'ai des problèmes pour modifier le code des pages PHP afin qu'elles utilisent l'URL réecrite. Je précise juste que c'est pour des adresses plus "nettes" et non pour l'indexation Google puisqu'il paraît que la version 1.3.1 d'IPB est parfaitement "indexable".

Voici un exemple de règle que j'ai écris dans le .htaccess :
Code: Tout sélectionner
RewriteRule   ^IPB/forum([0-9]+)\.htm$   IPB/index.php?showforum=$1  [L]


Cette règle fonctionne, si je tape

Code: Tout sélectionner
http://incognitro.celeonet.fr/IPB/forum1.htm


cela équivaut à

Code: Tout sélectionner
http://incognitro.celeonet.fr/IPB/index.php?showforum=1


Il y a tout de même un problème :( je suis perdu dans le code PHP des pages et je ne sais pas comment je dois les modifier pour qu'elles utilisent les adresses réecrites.

Je crois que la modification se fait dans cette partie du code, mais je ne suis pas sûr.

Exemple pour la page index.php
Code: Tout sélectionner
//--------------------------------
//  Set up the session ID stuff
//--------------------------------

if ( $ibforums->session_type == 'cookie' )
{
   $ibforums->session_id = "";
   $ibforums->base_url   = $ibforums->vars['board_url'].'/index.'.$ibforums->vars['php_ext'].'?';
}
else
{
   $ibforums->base_url = $ibforums->vars['board_url'].'/index.'.$ibforums->vars['php_ext'].'?s='.$ibforums->session_id.'&';
}

$ibforums->js_base_url = $ibforums->vars['board_url'].'/index.'.$ibforums->vars['php_ext'].'?s='.$ibforums->session_id.'&';


Pouvez-vous m'expliquer comment utiliser l'adresse rewritée du .htaccess si-dessus ?

Merci beaucoup !

chewb
WRInaute discret
WRInaute discret
 
Messages: 101
Inscription: 8 Jan 2004

Message le Lun Juil 05, 2004 13:33

Je te conseil de créer un fichier du type "reecriture.php"

Dedans tu va uiliser, par exemple la fonction
function replace_for_mod_rewrite(&$s)
{
$urlin = array(
//Forum IPBoard
//"'(?<!/\/)modules/ipboard/\"'",
//"'(?<!/\/)modules/ipboard/index.php\?s=([a-zA-Z0-9+]*)&amp;showforum=([0-9]*)\"'",
//"'(?<!/\/)modules/ipboard/index.php\?s=([a-zA-Z0-9+]*)&amp;showforum=([0-9]*)\''",
//"'(?<!/\/)modules/ipboard/index.php\?s=([a-zA-Z0-9+]*)&amp;showtopic=([0-9]*)\"'",
//"'(?<!/\/)modules/ipboard/index.php\?s=([a-zA-Z0-9+]*)&amp;showtopic=([0-9]*)\''",
//"'(?<!/\/)modules/ipboard/index.php\?showtopic=([0-9]*)'",
//"'(?<!/\/)modules/ipboard/index.php\?s=([a-zA-Z0-9+]*)&amp;showforum=([0-9]*)&amp;prune_day=([0-9]*)&amp;sort_by=([\-_a-zA-Z0-9+]*)&amp;sort_key=([\-_a-zA-Z0-9+]*)&amp;st=([0-9]*)'",
//"'(?<!/\/)modules/ipboard/index.php\?s=([a-zA-Z0-9+]*)&amp;act=idx'",
//"'(?<!/\/)modules/ipboard/index.php\?s=([a-zA-Z0-9+]*)&amp;c=([0-9]*)'",
//"'(?<!/\/)modules/ipboard/index.php\?s=([a-zA-Z0-9+]*)&amp;showtopic=([0-9]*)&amp;view=getnewpost'",
//"'(?<!/\/)modules/ipboard/index.php\?s=([a-zA-Z0-9+]*)&amp;showtopic=([0-9]*)&amp;view=getlastpost'",
//"'(?<!/\/)modules/ipboard/index.php\?s=([a-zA-Z0-9+]*)&amp;act=([\-_a-zA-Z0-9+]*)&amp;c=([0-9]*)'",
//"'(?<!/\/)modules/ipboard/index.php\?s=([a-zA-Z0-9+]*)&amp;showtopic=([0-9]*)&amp;st=([0-9]*)'",
//"'(?<!/\/)modules/ipboard/index.php\?act=([\-_a-zA-Z0-9+]*)&f=([0-9]*)&t=([0-9]*)&s=([a-zA-Z0-9+]*)&view=getlastpost'",
//"'(?<!/\/)modules/ipboard/index.php\?act=([\-_a-zA-Z0-9+]*)&f=([0-9]*)&t=([0-9]*)&s=([a-zA-Z0-9+]*)'",
);
$urlout = array(
//Forum IPBoard
//"forum.html\"",
//"modules/ipboard/forum-cat-\\2.html\"",
//"modules/ipboard/forum-cat-\\2.html'",
//"modules/ipboard/forum-post-\\2.html\"",
//"modules/ipboard/forum-post-\\2.html'",
//"modules/ipboard/forum-post-\\1.html\"'",
//"modules/ipboard/forum-catpage-\\2-\\3-\\4-\\5-\\6.html",
//"forum.html",
//"modules/ipboard/forum-board-\\2.html",
//"modules/ipboard/forum-post-\\2-getnewpost.html",
//"modules/ipboard/forum-post-\\2-getlastpost.html",
//"modules/ipboard/forum-board-\\2-\\3.html",
//"modules/ipboard/forum-post-page-\\2-\\3.html",
//"modules/ipboard/forum-post-\\1-\\2-\\3-getlastpost.html",
//"modules/ipboard/forum-post-\\1-\\2-\\3.html",

);

$s = preg_replace($urlin, $urlout, $s);
return $s;
}

Que tu appell avec un fichier header contenant par exemple :
ob_start();
include('reecriture.php');





PS. J'ai repris un code que j'utilise pour mon site xoops, n'utilisant pas ipb mes lignes sont toutes commentées....
P.P.S : Il reste a appliquer la fonction a la varialbe qui créer les url, mais je ne la connais pas sous ipb kk1 pourra surement t'aider

Philippe.G
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 41
Inscription: 6 Juin 2004

Message le Sam Juil 10, 2004 23:28

merci pour tes conseils ;) mais la je ne suis plus trop motivé :( c'est effectivement les MàJ qui me font soucis :D

merci ;)


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Formation recommandée sur ce thème :

Formation URL Rewriting et sites dynamiques : apprenez comment mettre en place la réécriture d'URL, comment optimiser vos URL et profiter de vos pages dynamiques pour booster votre référencement. Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités