lossendae Posté 10 Avril 2008 Posté 10 Avril 2008 Bonjour, apres moult recherche sur internet, parcours de tutoriaux etc, rien à faire je n'arrive pas à faire ce que je veux! L'URL Rewriting fonctionne dans sa version fournie avec Modx : Options +FollowSymlinksRewriteEngine OnRewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule ^(.*)$ index.php?q=$1 [QSA,L] donc au lieu d'avoir -http://www.monsite.fr/index.php?id=1 J'ai bien -http://www.monsite.fr/accueil.html J'ai remarqué que le littéral .html n'étais pas présent dans le .htaccess, donc je suppose que c'est le CMS qui exécute le code nécessaire et rajoute les options puisque dans l'admin on peut créer les alias que l'on veut, le littéral désiré, et les séparateur pour les répertoires virtuels. Grâce à ces réglages je peux avoir des url avec la forme: -http://www.monsite.com/fr/accueil.html ou -http://www.monsite.com/gb/accueil.html Maintenant lorsque j'utilise un formulaire j'obtiens l'URL suivante: -http://www.monsite.com/fr/accueil.html?var=choix et j'aimerais obtenir une URL soit -http://www.monsite.com/fr/choix/accueil.html ou -http://www.monsite.com/fr/accueil-choix.html J'ai essayé d'appliquer un maximum d'exemple et de règles dans les tutos et forums parcourus mais rien à faire. Quelqu'un aurait-il une piste pour m'aiguiller? Ou va t'il falloir me plonger dans le code du CMS même pour modifier le comportement du fichier qui s'occupe de réécrire les URL?
aour Posté 11 Avril 2008 Posté 11 Avril 2008 Bonjour, Pour t'aider, il faudrait nous en dire un peu plus sur ton formulaire. Utilises tu eform? A quoi sert ton formulaire? rediriger vers une autre page? Aour
lossendae Posté 13 Avril 2008 Auteur Posté 13 Avril 2008 Utilises tu eform?A quoi sert ton formulaire? rediriger vers une autre page? Aour Bonjour, merci de ta réponse. Je n'utilise pas eform (est-il indispensable de l'utiliser?). Mon formulaire permet de saisir une marque, et, à la validation, redirige vers une autre page effectivement. donc ça donne: www.monsite.fr/ comme page d'accueil avec le formulaire, puis à la validation: www.monsite.fr/fr/accueil.html?marque=variable ou www.monsite.fr/gb/welcome.html?marque=variable si la langue selectionnée est l'anglais. Je ne veux pas le travail clée en main, j'ai tenté d'utiliser SEO Strict URL en plug in sans succès, peut être avec une TV ou eform mais j'avoue ne pas les utiliser du tout...
lossendae Posté 14 Avril 2008 Auteur Posté 14 Avril 2008 (modifié) Bon je continue de chercher, et d'essayer diverse manipulation dans le fichier .htaccess J'ai essayé une regle qui réecrit l'URL RewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteCond %{QUERY_STRING} marque=([A-Z]+)RewriteRule ^(.*)$ index.php?q=$1%1 [R=301,L,QSA] et l'URL qu'il me donne est : localhost/E:/DIR/index.php?q=fr/accueil.htmlVARIABLE&marque=VARIABLE si je fait: RewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteCond %{QUERY_STRING} marque=([A-Z]+)RewriteRule ^(.*)$ index.php?q=$1&marque=%1 [R=301,L] j'obtient l'URL: localhost/E:/DIR/index.php?q=fr/accueil.html&marque=VARIABLE Les 2 générant une erreur 403 au moins il réecrit mais ça reste tres faux et pas du tout ce que j'essaie d'obtenir comme resultat :-/ Modifié 14 Avril 2008 par lossendae
heliotrope Posté 14 Avril 2008 Posté 14 Avril 2008 Salut, à défaut d'utiliser un document pour chaque étape, tu ne pourras pas obtenir le résultat escompté. Et même dans ce cas tu ne pourras créer un alias sur la base des choix de l'internaute. :-)
lossendae Posté 14 Avril 2008 Auteur Posté 14 Avril 2008 Salut, à défaut d'utiliser un document pour chaque étape, tu ne pourras pas obtenir le résultat escompté. Et même dans ce cas tu ne pourras créer un alias sur la base des choix de l'internaute. :-) Bonjour, je ne comprend pas vraiment ce que tu veux dire... La page d'accueil du site comprend juste un formulaire dans lequel l'internaute choisi la marque désirée. Une fois choisie, il accede à la page d'accueil personalisé pour sa marque. je ne vois pas ou la necessité de mettre plustieurs fois le formulaire ou alors j'ai vraiment rien compris de ce que tu as voulu m'expliquer... Je penche plutot pour le second choix :-p
heliotrope Posté 14 Avril 2008 Posté 14 Avril 2008 Grâce à ces réglages je peux avoir des url avec la forme: -http://www.monsite.com/fr/accueil.html ou -http://www.monsite.com/gb/accueil.html Maintenant lorsque j'utilise un formulaire j'obtiens l'URL suivante:-http://www.monsite.com/fr/accueil.html?var=choix et j'aimerais obtenir une URL soit -http://www.monsite.com/fr/choix/accueil.html ou -http://www.monsite.com/fr/accueil-choix.html Je vais tacher d'être plus clair :-) ta problématique: Sur la page d'accueil tu as un formulaire. L'internaute sélectionne une marque. Une fois la sélection effectuée, l'internaute est dirigée vers une page(ou bien la même page) contenant les infos liées à sa sélection. Contexte: Avec MODx, chaque doc a un alias (unique ou non). Cet alias est figé, on ne peut le modifier à la volée. La combinaison alias<=>id permet à modx de servir la bonne page. Pour ce que tu veux faire, tu es obligé de rediriger après sélection vers une page dont l'alias est accueil-choix C'est le moyen le plus simple. :-)
lossendae Posté 14 Avril 2008 Auteur Posté 14 Avril 2008 Je vais tacher d'être plus clair :-) ta problématique: Sur la page d'accueil tu as un formulaire. L'internaute sélectionne une marque. Une fois la sélection effectuée, l'internaute est dirigée vers une page(ou bien la même page) contenant les infos liées à sa sélection. Contexte: Avec MODx, chaque doc a un alias (unique ou non). Cet alias est figé, on ne peut le modifier à la volée. La combinaison alias<=>id permet à modx de servir la bonne page. Pour ce que tu veux faire, tu es obligé de rediriger après sélection vers une page dont l'alias est accueil-choix C'est le moyen le plus simple. :-) Arf! je crois saisir, mais j'ai aussi manqué de précision :-p Schematisons: www.monsite.fr --> Contient la page d'accueil générale et le formulaire qui envoie systématiquement à la validation d'une marque vers une page d'accueil: www.monsite.fr/fr/accueil.html donc index.php?q=fr/accueil.html Disons qu'il y a 2 marque VAR1 et VAR2 apres leurs saisie obligatoire sur la page d'accueil (www.monsite.fr) ils sont redirigé vers une seule page necessitant la variable marque www.accueil.fr/fr/accueuil.html?marque=VAR1 ou www.accueil.fr/fr/accueuil.html?marque=VAR2 Ce que tu me dis c'est qu'il faudrait a nouveau copié les pages sur chaques marques pour pouvoir obtenir une page avec un alias qui s'appelerait accueil-var1 et une avec accueil-var2 et ainsi de suite? Or c'est la même page, j'ai juste besoin de récupérer la variable et la ré afficher dans la page, ou de la lier a d'autre informations via une base de donnée mais sans les dédoubler (Vu la quantité de marque de toute façon cela ne va pas être possible). Je pourrai le faire passer en session, mais pour le referencement, il est préferable que la marque apparaisse dans l'URL (l'internaute n'aura accès à la page accueil.html que si la marque est renseignée). D'ou l'envie (plus que la nécessité) que l'URL soit réecrite plutot comme www.monsite.fr/VAR1/fr/acceuil.html ou www.monsite.fr/fr/accueil-var1.html en place de www.monsite.fr/fr/accueil.html?marque=var1 J'ai vu sur d'autre topic que cela etait possible avec le parametre RewriteCond %QUERY_STRING, mais peut être pas avec Modx...
lossendae Posté 14 Avril 2008 Auteur Posté 14 Avril 2008 Je vais tacher d'être plus clair :-) ta problématique: Sur la page d'accueil tu as un formulaire. L'internaute sélectionne une marque. Une fois la sélection effectuée, l'internaute est dirigée vers une page(ou bien la même page) contenant les infos liées à sa sélection. Contexte: Avec MODx, chaque doc a un alias (unique ou non). Cet alias est figé, on ne peut le modifier à la volée. La combinaison alias<=>id permet à modx de servir la bonne page. Pour ce que tu veux faire, tu es obligé de rediriger après sélection vers une page dont l'alias est accueil-choix C'est le moyen le plus simple. :-) Je sens que je vais te faire repeter, je viens de relire ton post et tu parle bien de rediriger l'internaute. Donc je suppose que c'est possible que si l'URL Rewriting n'est pas activé ou en utilisant SEO Strict URL ? arf, je m'embrouille, ça tourne :-/
lossendae Posté 16 Avril 2008 Auteur Posté 16 Avril 2008 Dois-je considérer ce manque de réponse comme une impossibilité de trouver une solution à mon probleme?
aour Posté 16 Avril 2008 Posté 16 Avril 2008 Bonjour, Je pense qu'un post sur le forum de support de Modxcms serait plus utile et toucherai plus de personnes. Aour
lossendae Posté 17 Avril 2008 Auteur Posté 17 Avril 2008 J'ai posté le même sujet sur Modxcms, dans le forum français et dans le forum anglais et je n'ai obtenu qu'une seule réponse de quelqu'un qui cherchait a faire la même chose que moi. Bon, je sais , les gens bossent et n'ont absolument aucune obligation de me répondre, mais ton nom ou celui d'heliotrope reviennent souvent dans les aides pour Modx sur le forums là-bas, et pourtant vous m'avez répondu ici même. M'en vais quand même retenter ma chance, sait on jamais **EDIT Administrateur (TheRec)** Inutile de citer le message précédent en entier lorsqu'il figure juste au-dessus. J'ai édité votre message dans ce sens. Merci de votre compréhension.
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant