Jump to content
Sign in to follow this  
Yoya

url rewriting et image ni home, ni thumbnail, ni large etc ...

Recommended Posts

Bonjour,
Je viens d'installer l'url rewriting sur serveur OVH pro, ou tout fonctionne à merveille .. enfin presque.
Le fichier .htaccess est généré avec prestashop.

Voici la rule pour les images produit :

RewriteRule ^([a-z0-9]+)\-([a-z0-9]+)(\-[a-zA-Z0-9-]*)/([_a-zA-Z0-9-]*)\.jpg$ /img/p/$1-$2$3.jpg [L,E]



Si je souhaite afficher par exemple
getImageLink($product.link_rewrite, $product.id_image, large )}" img>
www.boutique.com/27-99-large/mon-produit.jpg -> OK www.boutique.com/img/p/27-99-large.jpg est affichée

getImageLink($product.link_rewrite, $product.id_image, home )}" img>
www.boutique.com/27-99-home/mon-produit.jpg -> OK: www.boutique.com/img/p/27-99-home.jpg est affichée
etc ...

Par contre si je veux afficher l'image originelle :
getImageLink($product.link_rewrite, $product.id_image, null)}"
www.boutique.com/27-99/mon-produit.jpg -> NOK ! www.boutique.com/img/c/27-99.jpg n'existe pas bien sur.

Sa ne marche pas car il prends la rule suivante pour les catégorie :

RewriteRule ^([0-9]+)(\-[_a-zA-Z0-9-]*)/([_a-zA-Z0-9-]*)\.jpg$ /img/c/$1$2.jpg [L,E]



Si je modifie la rule des catégorie ainsi :

RewriteRule ^([0-9]+)(\-[_a-zA-Z0-9-]*)/([_a-zA-Z0-9-]*)\.jpg$ /img/p/$1$2.jpg [L,E]

, bien sur j'arrive à afficher www.boutique.com/27-99/mon-produit.jpg sauf que mes images de catégorie ne marchent plus bien sur.

Comment puis-je concilier les deux ?

Merci d'avance au url rewriter [spam-filter] :D

Cdlt,
Pierre.

Share this post


Link to post
Share on other sites

Pour ma part j'ai fait la modification suivante sur getImageLink, qui me permet de bypasser l'url rewriting à la demande:

Modifier class/Link.php ainsi :

   public function getImageLink($name, $ids, $type = null, $bypassAllow = false)
   {
       $ret='';
       if($this->allow == 1 && !$bypassAllow )
       {
           $ret=__PS_BASE_URI__.$ids.($type ? '-'.$type : '').'/'.$name.'.jpg';
       }
       else
       {
           $ret=_THEME_PROD_DIR_.$ids.($type ? '-'.$type : '').'.jpg';            
       }

       return $ret;
   }



et donc appeler son image ainsi pour par exemple l'image d'origine (3ème parametre à null) :

{$link->getImageLink($product->link_rewrite,$product.id_image,null,true)}



Sa répond pas à ma question mais sa répond à ma demande sur le projet.

Cdlt,
Pierre.

Share this post


Link to post
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
Sign in to follow this  

×
×
  • Create New...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More