Saluts92 Posted August 28, 2017 Share Posted August 28, 2017 Bonjour, Je suis en train d'étudier la migration de mon site actuel (développé 100% sans CMS) vers prestashop v1.7.2.1. Le nom de domaine ne change pas mais pratiquement toutes les URLS vont être modifiées pour coller au standard Prestashop, je dois donc faire des redirections 301 des anciennes vers les nouvelles pages Je vais avoir environ 100000 redirection à faire. J'ai bien peur qu'autant de lignes dans le fichier HTACCESS ne ralentisse mon site (?). Y a t-il une solution meilleure qu'une autre pour gérer ce cas de figure ? si oui laquelle ? D'avance merci pour vos futures réponses Cdlt Link to comment Share on other sites More sharing options...
Johann Posted August 28, 2017 Share Posted August 28, 2017 Déjà, oublie la version 1.7 et installe un 1.6 Ensuite, si t'es produits ont les mêmes identifiants sur l'ancien site et sur prestashop, tu devrais pouvoir faire une redirection avec expression régulière par type d'URL : produits, catégories, etc... Link to comment Share on other sites More sharing options...
Saluts92 Posted August 29, 2017 Author Share Posted August 29, 2017 pourquoi oublier v1.7 ? alors que la migration 1.6 vers 1.7 demandera dans le futur beaucoup d'effort ? pour les produits ce ne sera pas possible non plus étant donné que l'identifiant n'apparaitra plus dans l'URL si j'utilise les URL simplifiées Link to comment Share on other sites More sharing options...
Johann Posted August 29, 2017 Share Posted August 29, 2017 Parce que la version 1.7 est une merde absolue, mais je te laisse le plaisir de t'en rendre compte par toi même Et avec l'url rewriting de PS, tu as quand même les ID de tes produits dans l'url. En 2009/2010, j'ai migré quelques sites osCommerce vers PrestaShop en conservant les ID, et en ayant juste deux 301 dans mon .htaccess : une pour les catégories, et une pour les produits Link to comment Share on other sites More sharing options...
Grafyx89 Posted March 10, 2018 Share Posted March 10, 2018 Bonjour, je déterre ce topic de 2017. @Johann : Est-ce que tu peux me communiquer ta façon de faire pour faire les redirections de l'os Commerce vers Prestashop ? J'ai a peu prêt 6000 produits à rediriger avec leur catégories. Si tu as une solution efficace et rapide, je suis preneur Merci beaucoup pour ton retour, Bonne journée Link to comment Share on other sites More sharing options...
SmartPlugs Posted March 10, 2018 Share Posted March 10, 2018 Bonjour, En 2012 une agence m'a fait travailler sur les redirections consécutives à la migration de deux sites os commerce > PrestaShop. Pour plusieurs raisons j'avais opté pour des redirections PHP mises en place via : - Le développement d'un module de redirections qui est par la suite devenu celui vendu par smart-plugs et qui pouvait notamment, outre rediriger, récupérer les 404 "intéressantes" au cas ou nous aurions oublié des redirections. - L'import dans ce module d'une liste de correspondance ancienne url <> nouvelle url, liste que j'avais obtenue via un script utilisant en particulier les tables oscommerce que j'avais ajoutées dans la base de données utilisée par PrestaShop. Obtenir une telle liste n'avais pas été simple mais l'obligation de tout rediriger proprement avait imposé cette méthologie. Si vous arrivez à conserver les ID des produits et des catégories une solution peut être en effet (a tester) de mettre en place une réécriture de type : Shéma acienne url avec ID réécrit en index.php?controller=product&id_product=ID La redirection canonique de PrestaShop fera ensuite la redirection attendue. Link to comment Share on other sites More sharing options...
Grafyx89 Posted March 10, 2018 Share Posted March 10, 2018 Hello, Merci de ta réponse rapide, Pour ma part cela donne : mon url oscommerce est de type : http://url-oscommerce.fr/produit_18053 nouvelle : http://nouveausite.com/bien-etre-bio/18053-produit-5060099030970.html J'ai tenter celà en htacces : #Domain: www.nouveausite.com RewriteRule . - [E=REWRITEBASE:/] # Redirections produits RewriteCond %{HTTP_HOST} ^siteOscommerce.fr$ RewriteCond %{HTTP_HOST} ^siteOscommerce2.fr$ RewriteRule ^[a-zA-Z0-9-]*p-([0-9]+)\.html$ /index.php?id_product=$1&amp;amp;amp;amp;controller=product [R=301] # Redirection catégories RewriteCond %{HTTP_HOST} ^siteOscommerce.fr$ RewriteCond %{HTTP_HOST} ^siteOscommerce2.fr$ RewriteRule ^[a-zA-Z0-9-]*-c-[0-9_]+_([0-9]+)\.html$ %{ENV:REWRITEBASE}redirect_cat.php?id_category=$1 [L] #3 niveau RewriteRule ^[a-zA-Z0-9-]*c-[0-9]+_[0-9]+_([0-9]+)\.html$ /redirect_cat.php?id_category=$1 [R=301] #2 niveaux RewriteRule ^[a-zA-Z0-9-]*c-[0-9]+_([0-9]+)\.html$ /redirect_cat.php?id_category=$1 [R=301] #1 niveau RewriteRule ^[a-zA-Z0-9-]*c-([0-9]+)\.html$ /redirect_cat.php?id_category=$1 [R=301] Avec un redirect_cat.php : <?php if(is_numeric($_GET['id_category'])) { $psCatId=$_GET['id_category']+1; } else { header("Status: 404 Not Found"); exit(); } $url="http://".$_SERVER['HTTP_HOST']."/category.php?id_category=".$psCatId; header("Status: 301 Moved Permanently", false, 301); header("Location: ".$url); exit(); Pour ma part j'ai importé 2Oscommerce dans un seul prestashop, donc il y a les produits du domaine principal et des 2 autres boutiques qui était des sous-domaine. Mais j'avoue qu'avec cette solution, je n'ai pas de redirection faites .. 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