Forum verrouillé Forum verrouillé Imprimer Syndication RSS 2.0

[MOD] Url rewriting - Url courtes

Améliorer facilement le référencement de votre forum
Volcan
Avatar de Ohax
  • Age : 24 ans
  • Messages : 1955
  • Inscrit : 22 Juin 2005
Message édité 9 fois, dernière édition par Ohax, 21 Aout 2007, 12:47     Lien vers ce message 22 Juin 2005, 3:18
Le support de ce MOD s'effectue uniquement à la suite de ce topic, afin de regrouper au maximum les réponses aux problèmes posés.


14 octobre 2006 : Mise à jour de la version 2.0.0 à la version 2.1.0 -> Page 8


  1. [size=18]Données du MOD :[/size]

  2. * Nom : Url rewriting - Url courtes pour améliorer le référencement sur les outils de recherche tels que google & co
  3. * Version : 2.1.0
  4. * Historique :
    Commencé : Le 22/06/2005
    Dernière modification : Le 14/10/2006
  5. * Fichiers joints : 1 ( .htaccess à créer soit même grace aux explications ;-) )
  6. * Fichiers à modifier : 5
  7. * Installation : 5 - 10 minute(s)
  8. * Niveau : Moyen
  9. * Cache : Oui
  10. * Requètes SQL : non
  11. * Compatible : Toutes versions
  12. * Démo / Démonstration : http://www.adojeunz.com/forum/index.php
  13. * Description : Ce mod vous permettra de modifier les urls de votre forum pour faciliter son indexation sur les moteurs de recherche tels que google. Ce mod utilise très peu de ressources et reste indispensable pour un bon référencemment. L'url rewriting permet également de faire des urls plus courtes et plus simples à retenir pour le visiteur ;-)
  14. Notes : Pour que ce mod fonctionne, votre hebergeur doit avoir l'url rewriting d'activé (ce qui n'est pas le cas de Free et de nombreux autres hebergeurs gratuits).



  1. [size=18]Données de l'auteur :[/size]
    1. Auteur : Ohax
    2. Contact : http://www.fire-soft-board.com/images/mp.gif
    3. Site : http://www.adojeunz.com



Merci beaucoup à NiCo pour la version 2.0.0 qui permet de gerer tout ceci dans la panneau d'administration !

  1. [size=18]Données de l'auteur :[/size]
    1. Auteur : Nico
    2. Contact : http://www.fire-soft-board.com/images/mp.gif
    3. Site : http://www.copainsdabord.info/







Chose promise, chose due :=$
http://www.fire-soft-board.com/fsb/sujet.php?sujet=2387

J'espère que ce premier mod ne sera pas le dernier :-)

#
# [1] ---------- Cache ---------------------------------------
#

INSERT config FIELDS name value VALUES 'use_urlrewriting' '1';

#
# [2] ---------- Ouvrir -----------------------------------------------
#

langues/fr/langue_admin.php

#
# [3] ---------- Trouver ----------------------------------------------
#

?>

#
# [4] ---------- Avant, ajouter ---------------------------------------
#

// URL Rewriting
$langue['use_urlrewriting'] = 'Utiliser l\'URL Rewriting';

#
# [5] ---------- Ouvrir -----------------------------------------------
#

admin/admin_index_config.php

#
# [6] ---------- Trouver ----------------------------------------------
#

   'L_DESCRIPTION_SITE' =>      $langue['cf_description_site'],

#
# [7] ---------- Après, ajouter ---------------------------------------
#

   'L_USE_URLREWRITING' =>            $langue['use_urlrewriting'],

#
# [8] ---------- Trouver ----------------------------------------------
#

   'V_DESCRIPTION_SITE' =>      $config['description_site'],

#
# [9] ---------- Après, ajouter ---------------------------------------
#

   'V_USE_URLREWRITING_OUI' =>      ( $config['use_urlrewriting'] ) ? 'checked="checked"' : '',
   'V_USE_URLREWRITING_NON' =>      ( ! $config['use_urlrewriting'] ) ? 'checked="checked"' : '',

#
# [10] ---------- Ouvrir ----------------------------------------------
#

includes/header_forum.php

#
# [11] ---------- Trouver ---------------------------------------------
#

$tpl->set_filenames(array('header' => ( $simple_header ) ? 'simple_header.tpl' : 'header.tpl'));

#
# [12] ---------- Avant, ajouter --------------------------------------
# /!\Supprimer ob_start(); si vous avez la modif de compression gzip /!\

if ($config['use_urlrewriting'])
{
   ob_start();
        function replace_mod_rewrite($s)
   {
   $urlin = array(
"'(?<!/)forum.php\?forum=([0-9]*)&amp;marquer=true'",
"'(?<!/)profil_public.php\?id=([0-9]*)'",
"'(?<!/)index.php\?cat=([0-9]*)'",
"'(?<!/)forum.php\?forum=([0-9]*)&amp;page=([0-9]*)'",
"'(?<!/)forum.php\?forum=([0-9]*)'",
"'(?<!/)sujet.php\?sujet=([0-9]*)&amp;page=([0-9]*)'",
"'(?<!/)sujet.php\?sujet=([0-9]*)&page=\" \+ value'",
"'(?<!/)sujet.php\?sujet=([0-9]*)'"
);

   $urlout = array(
"marquer-\\1.html",
"membre-\\1.html",
"cat-\\1.html",
"forum-\\1-\\2.html",
"forum-\\1-1.html",
"sujet-\\1-\\2.html",
"sujet-\\1-\" + value + \".html\"",
"sujet-\\1-1.html"
);

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

#
#--- [13] -------- ouvrir -----------------------------------------
#
includes/footer_forum.php


#
#--- [14] ---------- Trouver ------------------------------------------
#

// On ferme la connexion à  la base de donnée
$bdd->fermer_sql();


#
#--- [15] ----- Apres, ajouter ------------------------------------------
#

if ($config['use_urlrewriting'])
{
   $contents = ob_get_contents();
   ob_end_clean();
   echo replace_mod_rewrite($contents);
   global $dbg_starttime;
}

#
# [16] ---------- Ouvrir ----------------------------------------------
#

themes/IceCold/admin/admin_configuration.tpl

#
# [17] ---------- Trouver ---------------------------------------------
#

   <tr>
      <td class="td_admin4" valign="top">{L_MAIL_PAR_FORUM}:</td>
      <td class="td_admin2" width="350">
         <input type="radio" name="mail_par_forum" value="1" {V_MAIL_PAR_FORUM_OUI} /> {L_OUI}&nbsp;&nbsp;
         <input type="radio" name="mail_par_forum" value="" {V_MAIL_PAR_FORUM_NON} /> {L_NON}
      </td>
   </tr>

#
# [18] ---------- Après, ajouter --------------------------------------
#

   <tr>
      <td class="td_admin4" valign="top">{L_USE_URLREWRITING}:</td>
      <td class="td_admin2" width="350">
         <input type="radio" name="use_urlrewriting" value="1" {V_USE_URLREWRITING_OUI} /> {L_OUI}&nbsp;&nbsp;
         <input type="radio" name="use_urlrewriting" value="" {V_USE_URLREWRITING_NON} /> {L_NON}
      </td>
   </tr>

.htaccess à la racine de votre forum :

RewriteEngine On

RewriteRule ^marquer-([0-9]*).html /forum/forum.php?forum=$1&marquer=true

RewriteRule ^cat-([0-9]*).html /forum/index.php?cat=$1

RewriteRule ^membre-([0-9]*).html /forum/profil_public.php?id=$1

RewriteRule ^rubrique-([0-9]*).html /forum/forum.php?forum=$1
RewriteRule ^rubrique-([0-9]*)-([0-9]*).html /forum/forum.php?forum=$1&page=$2

RewriteRule ^forum-([0-9]*).html /forum/forum.php?forum=$1
RewriteRule ^forum-([0-9]*)-([0-9]*).html /forum/forum.php?forum=$1&page=$2

RewriteRule ^sujet-([0-9]*).html /forum/sujet.php?sujet=$1
RewriteRule ^sujet-([0-9]*)-([0-9]*).html /forum/sujet.php?sujet=$1&page=$2

robots.txt à la racine de votre site :

User-agent: *
Disallow: /forum/index.php?cat
Disallow: /forum/sujet.php
Disallow: /forum/forum.php
Disallow: /forum/profil_public.php
Disallow: /forum/profil.php
Disallow: /forum/connection.php
Disallow: /forum/faq.php
Disallow: /forum/poster.php
Disallow: /forum/rechercher.php
Disallow: /forum/liste_membre.php
 
VIP
Avatar de flash666
  • Messages : 2006
  • Inscrit : 01 Février 2005
  Lien vers ce message 22 Juin 2005, 8:07
les sessions ne sont pas passées par url, pour cette version de fsb (1)


ne remets pas à demain ce que tu peux faire faire aujourd'hui par un autre
 
Equipe des MODS
Avatar de Grummfy
  • Age : 27 ans
  • Messages : 7007
  • Inscrit : 16 Septembre 2004
  Lien vers ce message 22 Juin 2005, 12:56
elle sotn apssé par url si l'utilisateur nutilise aps de cookies voir ajout_sid()


"La gravité est le bonheur des imbéciles" Charles de Montesquieu > "T'as raison, L'apesanteur c'est plus rigolo" Hébus de Phalompe (Troll de Troy)
Mods fsb2 - Grummfy's project - Zf Planet
 
Flammeche
Avatar de Jaunalgi
  • Messages : 39
  • Inscrit : 06 Février 2005
  Lien vers ce message 22 Juin 2005, 13:10
Citation (Grummfy)
elle sotn apssé par url si l'utilisateur nutilise aps de cookies voir ajout_sid()


Je me souviens que j'avais grave merdé pour l'URL Rewriting quand je l'avais mis sur mon forum.
Il faut trouver tous les ajout_sid() et les modifier :
ajout_sid('index.php')

en
ajout_sid('index').'.html'

tout en ayant modifié la dite fonction ajout_sid (pour ajouter un tirer avant la session)
+ toutes les fonctions de pagination (la liste dans cette page par exemple : http://forum.grandprix4.org/forum-2.html )
etc etc... C'est super long (et chiant :lol: )

Mais ça vaut le coup.
Bon courage Ohax, j'ai bossé différemment de toi quand je regarde ton code vu que j'ai modifié une par une toutes les urls... :lol:
 
Equipe des MODS
Avatar de Grummfy
  • Age : 27 ans
  • Messages : 7007
  • Inscrit : 16 Septembre 2004
  Lien vers ce message 22 Juin 2005, 14:44
le plsu simple est de modifier cela directement dans ajout_sid


"La gravité est le bonheur des imbéciles" Charles de Montesquieu > "T'as raison, L'apesanteur c'est plus rigolo" Hébus de Phalompe (Troll de Troy)
Mods fsb2 - Grummfy's project - Zf Planet
 
Equipe de développement
Avatar de Fabogranqi
  • Age : 22 ans
  • Messages : 3238
  • Inscrit : 29 Décembre 2004
  Lien vers ce message 22 Juin 2005, 18:22
Tu es sur que l'url rewriting marche avec Free ???
 
Flamme ardente
Avatar de Tagu
  • Age : 25 ans
  • Messages : 455
  • Inscrit : 23 Septembre 2004
  Lien vers ce message 22 Juin 2005, 19:09
Pour un site perso chez free, l'url rewriting ne marché pas !
 
Volcan
Avatar de Ohax
  • Age : 24 ans
  • Messages : 1955
  • Inscrit : 22 Juin 2005
  Lien vers ce message 23 Juin 2005, 11:06
free n'est pas compatible
 
Equipe de développement
Avatar de Fabogranqi
  • Age : 22 ans
  • Messages : 3238
  • Inscrit : 29 Décembre 2004
  Lien vers ce message 23 Juin 2005, 11:15
Citation (Ohax)
Notes : Pour que ce mod fonctionne, votre hebergeur doit avoir l'url rewriting d'activé (ce qui est le cas de Free


C'est pas ce que tu as marqué ! ;)
 
Volcan
Avatar de Ohax
  • Age : 24 ans
  • Messages : 1955
  • Inscrit : 22 Juin 2005
  Lien vers ce message 23 Juin 2005, 11:59
désolé il était tard quand j'ai fait ça x) je vai éditer ;)
 
Feu follet
Avatar de KillerHyena
  • Messages : 113
  • Inscrit : 16 Mai 2005
  Lien vers ce message 23 Juin 2005, 16:42
Ca à l'air pas mal tout ca (:)


Cherche personnes motivées pour intégrer l'équipe de Vanylla.
-&gt; http://vanylla.info/
 
Volcan
Avatar de Ohax
  • Age : 24 ans
  • Messages : 1955
  • Inscrit : 22 Juin 2005
  Lien vers ce message 23 Juin 2005, 17:59
Citation (Jaunalgi)

Il faut trouver tous les ajout_sid() et les modifier :
ajout_sid('index.php')

en
ajout_sid('index').'.html'

tout en ayant modifié la dite fonction ajout_sid (pour ajouter un tirer avant la session)
+ toutes les fonctions de pagination (la liste dans cette page par exemple : http://forum.grandprix4.org/forum-2.html )
etc etc... C'est super long (et chiant :lol: )


ça ne me parait pas nécessaire si on désactive les sessions dans l'url

Citation (Jaunalgi)
Mais ça vaut le coup.


je ne l'aurait pas fait sinon

Citation (Jaunalgi)
Bon courage Ohax, j'ai bossé différemment de toi quand je regarde ton code vu que j'ai modifié une par une toutes les urls... :lol:


tu veut dire qu'il y à moyen d'améliorer encore mon code ? :=$
 
Flammeche
Avatar de Jaunalgi
  • Messages : 39
  • Inscrit : 06 Février 2005
  Lien vers ce message 23 Juin 2005, 22:10
Citation (Ohax)
tu veut dire qu'il y à moyen d'améliorer encore mon code ? :=$


Je pense que ce qu'a dit Grummfy est pas con du tout puisque toute les url sont traitées par ajout_sid()
En fait, si tu regardes bien sur ton forum de démo, certaines urls ne sont pas traduites : sujet.php?message=61#61 (en cliquant sur la petite icone de dernier message) ou profil.php?mode=nouveau par exemple.

Le fait de passer par ajout_sid() permettra selon moi de garder les sessions dans l'url (comme c'est le cas sur mon forum)
Si tu veux, je peux regarder de ce coté là et on fait des tests pour voir quel est le système le plus efficace. Ton code est bien pensé, j'avais jamais pensé à ça. Il est juste incomplet.
 
Volcan
Avatar de Ohax
  • Age : 24 ans
  • Messages : 1955
  • Inscrit : 22 Juin 2005
  Lien vers ce message 23 Juin 2005, 22:42
si on garde les sessions dans l'url les moteurs ne peuvent pas indexer nos pages

le but est donc de supprimer les sessions au moin pour les invités
 
Flammeche
Avatar de Jaunalgi
  • Messages : 39
  • Inscrit : 06 Février 2005
  Lien vers ce message 23 Juin 2005, 22:50
Citation (Ohax)
si on garde les sessions dans l'url les moteurs ne peuvent pas indexer nos pages

le but est donc de supprimer les sessions au moin pour les invités


Mais au moins les accepter pour les membres.
Pour le lien retour vers l'accueil, il faut que tu supprimes index.php, c'est plus clean pour le référencement. :D
 
Forum verrouillé


.