Jump to content

URL Rewriting - personnalisation


Sbizz

Recommended Posts

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 5

SetEnv 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

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...