URL rewriting sur site multilangue

Nouveau WRInaute
Je travaille actuellement sur un site en multilangue (français, allemand), et je suis resté bloqué sur la partie en allemand..
Je m'explique : ayant lu plusieurs tutos, j'obtiens

RewriteRule ^(fr | de)/([a-z]+)$ /?l=$1&m=$2 [L] (le plus simple que j'ai)

Donc les pages existent aussi en allemand, pour y accéder il faut ajouter le paramètre l=de.
Le soucis c'est que pour faire apparaître les mots-clés en allemand dans l'url, htaccess va copier le mot allemand dans le paramètre "m", et "m" ne comprend que le français ex:

fr/bienvenue --> /?l=fr&m=bienvenue
de/willkommen --> /?l=de&m=willkommen (alors qu'il faudrait afficher m=bienvenue).

je bloque sur la convertion des mots allemands en français...
La solution pour l'instant que j'ai trouvé est de traiter lien par lien dans htaccess, mais le temps que ça me prend :roll: . les mises à jour deviennent plus difficile aussi... Quelqu'un connaît une solution plus efficace?

Merci!
 
Nouveau WRInaute
Salut salut !

Pourquoi ne pas prévoir les valeurs de m dans le code directement ?

Je ne sais pas comment tu gère tes langues, mais il suffit de faire (en PHP) if ($_GET['m'] == 'bienvenue' OR $_GET['m'] == 'wilkommen') etc...
 
Nouveau WRInaute
Eh bien enfaite le site est assez complexe, et déjà (presque) fini.
Si je dois faire mot par mot, je préfère faire dans htaccess.
Non je posais la question parce qu'avec un peu de chance quelqu'un a trouvé un sytème de génie pour diminuer un max de temps lors des mises à jour.
 
WRInaute accro
Il faut que dans ta page ?l=de&m=wilkommen

tu rajoutes une petite fonction qui va chercher dans ta base la valeur en fr de wilkommen en de

typiquement une petite table avec
fr | bienvenue
de |Wilkommen
fr | page1
de |Seite1

et que sur la base de cette requête, tu passes la valeur en français pour ton parametre
 
Nouveau WRInaute
Ok merci donc il faudrait créer comme un Dico dans la base pour trouver l'équivalance.
(parfois j'ai envie de me tirer une balle avec ces sites multilangues :lol: )
 
WRInaute accro
C'est très simple un site multilangue.

Tu sépares systématiquement dans deux tables les données dépendantes, et non-dépendantes de la langue.

Par exemple
Table post
post_ID
post_date
post_status

Table postlg
post_ID
post_lg
post_title
post_content

etc...

clé primaire post_ID sur la premiere, post_ID + post_lg sur la deuxième, avec un join sur le post_ID
 
Discussions similaires
Haut