Sbizz Posted September 13, 2011 Share Posted September 13, 2011 Salut. Je rencontre actuellement un problème. Ça doit bien faire 2h que je suis dessus, et je commence à me dire que le problème c'est pas moi mais Prestashop. Je m'explique : actuellement, je rajoute en fait une donnée en GET lorsqu'on accède à un produit. Je rajoute en fait sa catégorie "par defaut". L'url rewriting de base donne ça : http://www.site.fr/category/{id_product}-product_name.html Moi, je veux ça : http://www.site.fr/category-{id_category}/{id_product}-product_name.html Bref, actuellement, mon .htaccess contient ça : SetEnv PHP_VER 5SetEnv REGISTER_GLOBALS 0 SetEnv MAGIC_QUOTES 0 # 1. URL rewriting module activation RewriteEngine on RewriteRule ^api/?(.*)$ /webservice/dispatcher.php?url=$1 [QSA,L] RewriteRule ^[a-zA-Z0-9-]*\-([0-9]+)/([0-9]+)\-[a-zA-Z0-9-]*\.html /product.php?id_product=$2&id_category=$1 [QSA,L] RewriteRule ^([a-z0-9]+)\-([a-z0-9]+)(\-[_a-zA-Z0-9-]*)/[_a-zA-Z0-9-]*\.jpg$ /img/p/$1-$2$3.jpg [L] RewriteRule ^([0-9]+)\-([0-9]+)/[_a-zA-Z0-9-]*\.jpg$ /img/p/$1-$2.jpg [L] RewriteRule ^([0-9]+)(\-[_a-zA-Z0-9-]*)/[_a-zA-Z0-9-]*\.jpg$ /img/c/$1$2.jpg [L] RewriteRule ^([0-9]+)\-[a-zA-Z0-9-]*\.html /product.php?id_product=$1 [QSA,L] RewriteRule ^([0-9]+)\-[a-zA-Z0-9-]* /category.php?id_category=$1 [QSA,L] RewriteRule ^[a-zA-Z0-9-]*/([0-9]+)\-[a-zA-Z0-9-]*\.html /product.php?id_product=$1 [QSA,L] RewriteRule ^([0-9]+)__([a-zA-Z0-9-]*) /supplier.php?id_supplier=$1 [QSA,L] RewriteRule ^([0-9]+)_([a-zA-Z0-9-]*) /manufacturer.php?id_manufacturer=$1 [QSA,L] RewriteRule ^content/([0-9]+)\-([a-zA-Z0-9-]*) /cms.php?id_cms=$1 [QSA,L] RewriteRule ^content/category/([0-9]+)\-([a-zA-Z0-9-]*) /cms.php?id_cms_category=$1 [QSA,L] RewriteRule ^([a-z]{2})/[a-zA-Z0-9-]*/([0-9]+)\-[a-zA-Z0-9-]*\.html /product.php?id_product=$2&isolang=$1 [QSA,L] RewriteRule ^([a-z]{2})/([0-9]+)\-[a-zA-Z0-9-]*\.html /product.php?id_product=$2&isolang=$1 [QSA,L] RewriteRule ^([a-z]{2})/([0-9]+)\-[a-zA-Z0-9-]* /category.php?id_category=$2&isolang=$1 [QSA,L] RewriteRule ^([a-z]{2})/content/([0-9]+)\-[a-zA-Z0-9-]* /cms.php?isolang=$1&id_cms=$2 [QSA,L] RewriteRule ^([a-z]{2})/content/category/([0-9]+)\-[a-zA-Z0-9-]* /cms.php?isolang=$1&id_cms_category=$2 [QSA,L] RewriteRule ^([a-z]{2})/([0-9]+)__[a-zA-Z0-9-]* /supplier.php?isolang=$1&id_supplier=$2 [QSA,L] RewriteRule ^([a-z]{2})/([0-9]+)_[a-zA-Z0-9-]* /manufacturer.php?isolang=$1&id_manufacturer=$2 [QSA,L] RewriteRule ^en/page-not-found$ /404.php?isolang=en [QSA,L] RewriteRule ^en/address$ /address.php?isolang=en [QSA,L] RewriteRule ^en/addresses$ /addresses.php?isolang=en [QSA,L] RewriteRule ^en/authentication$ /authentication.php?isolang=en [QSA,L] RewriteRule ^en/best-sales$ /best-sales.php?isolang=en [QSA,L] RewriteRule ^en/cart$ /cart.php?isolang=en [QSA,L] RewriteRule ^en/contact-us$ /contact-form.php?isolang=en [QSA,L] RewriteRule ^en/discount$ /discount.php?isolang=en [QSA,L] RewriteRule ^en/guest-tracking$ /guest-tracking.php?isolang=en [QSA,L] RewriteRule ^en/order-history$ /history.php?isolang=en [QSA,L] RewriteRule ^en/identity$ /identity.php?isolang=en [QSA,L] RewriteRule ^en/manufacturers$ /manufacturer.php?isolang=en [QSA,L] RewriteRule ^en/my-account$ /my-account.php?isolang=en [QSA,L] RewriteRule ^en/new-products$ /new-products.php?isolang=en [QSA,L] RewriteRule ^en/order$ /order.php?isolang=en [QSA,L] RewriteRule ^en/order-follow$ /order-follow.php?isolang=en [QSA,L] RewriteRule ^en/quick-order$ /order-opc.php?isolang=en [QSA,L] RewriteRule ^en/order-slip$ /order-slip.php?isolang=en [QSA,L] RewriteRule ^en/password-recovery$ /password.php?isolang=en [QSA,L] RewriteRule ^en/prices-drop$ /prices-drop.php?isolang=en [QSA,L] RewriteRule ^en/search$ /search.php?isolang=en [QSA,L] RewriteRule ^en/sitemap$ /sitemap.php?isolang=en [QSA,L] RewriteRule ^en/stores$ /stores.php?isolang=en [QSA,L] RewriteRule ^en/supplier$ /supplier.php?isolang=en [QSA,L] RewriteRule ^en/([^?&]*) /$1?isolang=en [QSA,L] RewriteRule ^fr/page-non-trouvee$ /404.php?isolang=fr [QSA,L] RewriteRule ^fr/adresse$ /address.php?isolang=fr [QSA,L] RewriteRule ^fr/adresses$ /addresses.php?isolang=fr [QSA,L] RewriteRule ^fr/authentification$ /authentication.php?isolang=fr [QSA,L] RewriteRule ^fr/meilleures-ventes$ /best-sales.php?isolang=fr [QSA,L] RewriteRule ^fr/panier$ /cart.php?isolang=fr [QSA,L] RewriteRule ^fr/contactez-nous$ /contact-form.php?isolang=fr [QSA,L] RewriteRule ^fr/bons-de-reduction$ /discount.php?isolang=fr [QSA,L] RewriteRule ^fr/suivi-commande-invite$ /guest-tracking.php?isolang=fr [QSA,L] RewriteRule ^fr/historique-des-commandes$ /history.php?isolang=fr [QSA,L] RewriteRule ^fr/identite$ /identity.php?isolang=fr [QSA,L] RewriteRule ^fr/fabricants$ /manufacturer.php?isolang=fr [QSA,L] RewriteRule ^fr/mon-compte$ /my-account.php?isolang=fr [QSA,L] RewriteRule ^fr/nouveaux-produits$ /new-products.php?isolang=fr [QSA,L] RewriteRule ^fr/commande$ /order.php?isolang=fr [QSA,L] RewriteRule ^fr/details-de-la-commande$ /order-follow.php?isolang=fr [QSA,L] RewriteRule ^fr/commande-rapide$ /order-opc.php?isolang=fr [QSA,L] RewriteRule ^fr/avoirs$ /order-slip.php?isolang=fr [QSA,L] RewriteRule ^fr/mot-de-passe-oublie$ /password.php?isolang=fr [QSA,L] RewriteRule ^fr/promotions$ /prices-drop.php?isolang=fr [QSA,L] RewriteRule ^fr/recherche$ /search.php?isolang=fr [QSA,L] RewriteRule ^fr/plan-du-site$ /sitemap.php?isolang=fr [QSA,L] RewriteRule ^fr/magasins$ /stores.php?isolang=fr [QSA,L] RewriteRule ^fr/fournisseurs$ /supplier.php?isolang=fr [QSA,L] RewriteRule ^fr/([^?&]*) /$1?isolang=fr [QSA,L] RewriteRule ^es/pagina-no-encuentra$ /404.php?isolang=es [QSA,L] RewriteRule ^es/direccion$ /address.php?isolang=es [QSA,L] RewriteRule ^es/direcciones$ /addresses.php?isolang=es [QSA,L] RewriteRule ^es/autenticacion$ /authentication.php?isolang=es [QSA,L] RewriteRule ^es/mas-vendidos$ /best-sales.php?isolang=es [QSA,L] RewriteRule ^es/carro-de-la-compra$ /cart.php?isolang=es [QSA,L] RewriteRule ^es/contactenos$ /contact-form.php?isolang=es [QSA,L] RewriteRule ^es/descuento$ /discount.php?isolang=es [QSA,L] RewriteRule ^es/estado-pedido$ /guest-tracking.php?isolang=es [QSA,L] RewriteRule ^es/historial-de-pedidos$ /history.php?isolang=es [QSA,L] RewriteRule ^es/identidad$ /identity.php?isolang=es [QSA,L] RewriteRule ^es/fabricantes$ /manufacturer.php?isolang=es [QSA,L] RewriteRule ^es/mi-cuenta$ /my-account.php?isolang=es [QSA,L] RewriteRule ^es/nuevos-productos$ /new-products.php?isolang=es [QSA,L] RewriteRule ^es/carrito$ /order.php?isolang=es [QSA,L] RewriteRule ^es/devolucion-de-productos$ /order-follow.php?isolang=es [QSA,L] RewriteRule ^es/pedido-rapido$ /order-opc.php?isolang=es [QSA,L] RewriteRule ^es/vales$ /order-slip.php?isolang=es [QSA,L] RewriteRule ^es/contrasena-olvidado$ /password.php?isolang=es [QSA,L] RewriteRule ^es/promocion$ /prices-drop.php?isolang=es [QSA,L] RewriteRule ^es/buscar$ /search.php?isolang=es [QSA,L] RewriteRule ^es/mapa-del-sitio$ /sitemap.php?isolang=es [QSA,L] RewriteRule ^es/tiendas$ /stores.php?isolang=es [QSA,L] RewriteRule ^es/proveedores$ /supplier.php?isolang=es [QSA,L] RewriteRule ^es/([^?&]*) /$1?isolang=es [QSA,L] RewriteRule ^de/Seite-nicht-gefunden$ /404.php?isolang=de [QSA,L] RewriteRule ^de/Adresse$ /address.php?isolang=de [QSA,L] RewriteRule ^de/Adressen$ /addresses.php?isolang=de [QSA,L] RewriteRule ^de/Authentifizierung$ /authentication.php?isolang=de [QSA,L] RewriteRule ^de/Verkaufshits$ /best-sales.php?isolang=de [QSA,L] RewriteRule ^de/Warenkorb$ /cart.php?isolang=de [QSA,L] RewriteRule ^de/kontaktieren-sie-uns$ /contact-form.php?isolang=de [QSA,L] RewriteRule ^de/Discount$ /discount.php?isolang=de [QSA,L] RewriteRule ^de/auftragsverfolgung-gast$ /guest-tracking.php?isolang=de [QSA,L] RewriteRule ^de/Bestellungsverlauf$ /history.php?isolang=de [QSA,L] RewriteRule ^de/Kennung$ /identity.php?isolang=de [QSA,L] RewriteRule ^de/Hersteller$ /manufacturer.php?isolang=de [QSA,L] RewriteRule ^de/mein-Konto$ /my-account.php?isolang=de [QSA,L] RewriteRule ^de/Neue-Produkte$ /new-products.php?isolang=de [QSA,L] RewriteRule ^de/Bestellung$ /order.php?isolang=de [QSA,L] RewriteRule ^de/Bestellungsverfolgung$ /order-follow.php?isolang=de [QSA,L] RewriteRule ^de/schnell-bestellung$ /order-opc.php?isolang=de [QSA,L] RewriteRule ^de/Bestellschein$ /order-slip.php?isolang=de [QSA,L] RewriteRule ^de/kennwort-wiederherstellung$ /password.php?isolang=de [QSA,L] RewriteRule ^de/Preise-fallen$ /prices-drop.php?isolang=de [QSA,L] RewriteRule ^de/Suche$ /search.php?isolang=de [QSA,L] RewriteRule ^de/sitemap$ /sitemap.php?isolang=de [QSA,L] RewriteRule ^de/Shops$ /stores.php?isolang=de [QSA,L] RewriteRule ^de/Zulieferer$ /supplier.php?isolang=de [QSA,L] RewriteRule ^de/([^?&]*) /$1?isolang=de [QSA,L] RewriteRule ^it/pagina-non-trovata$ /404.php?isolang=it [QSA,L] RewriteRule ^it/indirizzo$ /address.php?isolang=it [QSA,L] RewriteRule ^it/indirizzi$ /addresses.php?isolang=it [QSA,L] RewriteRule ^it/autenticazione$ /authentication.php?isolang=it [QSA,L] RewriteRule ^it/vendite-migliori$ /best-sales.php?isolang=it [QSA,L] RewriteRule ^it/carrello$ /cart.php?isolang=it [QSA,L] RewriteRule ^it/contattaci$ /contact-form.php?isolang=it [QSA,L] RewriteRule ^it/sconto$ /discount.php?isolang=it [QSA,L] RewriteRule ^it/ospite-monitoraggio$ /guest-tracking.php?isolang=it [QSA,L] RewriteRule ^it/storico-ordine$ /history.php?isolang=it [QSA,L] RewriteRule ^it/identite$ /identity.php?isolang=it [QSA,L] RewriteRule ^it/produttori$ /manufacturer.php?isolang=it [QSA,L] RewriteRule ^it/il-mio-account$ /my-account.php?isolang=it [QSA,L] RewriteRule ^it/nuovi-prodotti$ /new-products.php?isolang=it [QSA,L] RewriteRule ^it/ordine$ /order.php?isolang=it [QSA,L] RewriteRule ^it/seguito-ordine$ /order-follow.php?isolang=it [QSA,L] RewriteRule ^it/ordine-veloce$ /order-opc.php?isolang=it [QSA,L] RewriteRule ^it/nota-di-ordine$ /order-slip.php?isolang=it [QSA,L] RewriteRule ^it/password-recupero$ /password.php?isolang=it [QSA,L] RewriteRule ^it/riduzione-prezzi$ /prices-drop.php?isolang=it [QSA,L] RewriteRule ^it/cerca$ /search.php?isolang=it [QSA,L] RewriteRule ^it/sitemap$ /sitemap.php?isolang=it [QSA,L] RewriteRule ^it/negozi$ /stores.php?isolang=it [QSA,L] RewriteRule ^it/fornitore$ /supplier.php?isolang=it [QSA,L] RewriteRule ^it/([^?&]*) /$1?isolang=it [QSA,L] # Catch 404 errors ErrorDocument 404 /404.php J'ai trouvé ce code sur internet. La ligne en rouge, c'est rajouté by me. La voici : RewriteRule ^[a-zA-Z0-9-]*\-([0-9]+)/([0-9]+)\-[a-zA-Z0-9-]*\.html /product.php?id_product=$2&id_category=$1 [QSA,L] Bref, j'ai tenté PLEIN de trucs.. au début je pensais que c'etait mon niveau sur les RegExps qui étaient foireux, mais grâce à un logiciel, j'ai pu prouver que je suis tro for ! Bref... j'ai l'impression que c'est Prestashop qui me bloque. J'aimerai réussir à rajouter des informations dans mes urls. Là, j'ai qu'une information à rajouter, mais à d'autres endroits, j'ai quasi 5/6 données en GET à rajouter. Et je souhaite faire de l'URL Rewriting... J'ai l'impression que Prestashop écrase mes rajouts.. 'fin je sais pas si vous comprenez D: J'ai même tenté d'enlever TOUS les autres Rewrite, en pensant qu'il y avait conflit.. bah ça bug autant. Bref, pouvez-vous m'aider ? Prestashop: 1.4.4.0. Serveur: OVH PHP 5 Merci Link to comment Share on other sites More sharing options...
jeckyl Posted September 13, 2011 Share Posted September 13, 2011 Bonjour, nous avons développer un module qui permet de gérer facilement ce genre de configuration. http://www.prestatoolbox.fr/referencement-seo/137-url-rewriting-.html Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now