Jump to content

taille d'image et multiboutique (multiplication des images générées)


Recommended Posts

Bonjour à tous,

 

Je viens de passer de la 1.5.17 à la 1.5.2, et je me suis rendu compte de quelque chose d'étonnant.

Les tailles d'images (préférence > image, ps_image_type), et les images générés sont global pour toutes les boutiques.

Ce qui est surprenant!

Car si on as 10 boutiques, avec pour chaque boutique 5 tailles d'image de photo produit

(small, medium, large, thickbox, home) on va se retrouver avec pour chaque produit 50 images générées dont 45 inutiles?

 

donc si on as dix boutiques, avec 500 produits et 4 photos par produits.

on vas se retrouvé avec 20 000 photos produits.

Et donc 1 000 000 photos générées dont 900 000 photos inutiles? :wacko:

avec 20Ko, ca fait 18Go pour rien?

 

Je pense qu'il serait judicieux de définir les tailles d'images selon id_shop_group, id_shop

Link to comment
Share on other sites

nan pas de id_theme dans ps_image_type:

`id_image_type`, `name`, `width`, `height`, `products`, `categories`, `manufacturers`, `suppliers`, `scenes`, `stores`

 

le possibilité c'est de définir des type par boutique.

large_boutique1

large_boutique2

...

Et d'appeler dans le theme le type correspondant large_boutiqueX, mais l'admin va généré autant d'image que de type.

Link to comment
Share on other sites

Bonjour à tous,

 

Je viens de passer de la 1.5.17 à la 1.5.2, et je me suis rendu compte de quelque chose d'étonnant.

Les tailles d'images (préférence > image, ps_image_type), et les images générés sont global pour toutes les boutiques.

Ce qui est surprenant!

Car si on as 10 boutiques, avec pour chaque boutique 5 tailles d'image de photo produit

(small, medium, large, thickbox, home) on va se retrouver avec pour chaque produit 50 images générées dont 45 inutiles?

 

donc si on as dix boutiques, avec 500 produits et 4 photos par produits.

on vas se retrouvé avec 20 000 photos produits.

Et donc 1 000 000 photos générées dont 900 000 photos inutiles? :wacko:

avec 20Ko, ca fait 18Go pour rien?

 

Je pense qu'il serait judicieux de définir les tailles d'images selon id_shop_group, id_shop

 

Oui le jour où j'ai vu ce "default" apparaitre sur la 1.5.2, dans les formats d'image, j'ai eu la même réaction :(

 

Avec le multiboutiqe, la gestion d'image est à repenser completement...

Meme dans les tpl c'est plus d'actualité avec des variables height="{$homeSize.height}" width="{$homeSize.width}" qui ne renvoient que les valeurs de default...

 

Il y a encore du taff...

 

V++

 

Atch

Link to comment
Share on other sites

  • 2 weeks later...

Bon soumis le 13 nov:

http://forge.prestas...owse/PSCFV-5603

 

Mais jusqu'a aujourd'hui pas de réponse.

Et si je dis pas de betise, personne ne l'a même consulté

 

Il ya d'autre poste à ce sujet:

http://forge.prestashop.com/browse/PSCFV-5040

http://forge.prestashop.com/browse/PSCFV-4754

 

Je comprend pas que ca bouge, car c'est génant quand même?

 

J'avais pensé créer d'autre taille comme:

large_boutique1

large_boutique2

large_boutique3

 

Et utiliser dans les thèmes correspondant la bonne image:

<img src="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'large_boutique1')}" {if $jqZoomEnabled}class="jqzoom" alt="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'thickbox_default')}"{else} title="{$product->name|escape:'htmlall':'UTF-8'}" alt="{$product->name|escape:'htmlall':'UTF-8'}" {/if} id="bigpic" width="{$largeSize.width}" height="{$largeSize.height}" />

 

au lieu de:

<img src="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'large_default')}" {if $jqZoomEnabled}class="jqzoom" alt="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'thickbox_default')}"{else} title="{$product->name|escape:'htmlall':'UTF-8'}" alt="{$product->name|escape:'htmlall':'UTF-8'}" {/if} id="bigpic" width="{$largeSize.width}" height="{$largeSize.height}" />

 

Mais du coup il récupère tout la variable de large_default:

width="{$largeSize.width}"

définit dans le

CategoryController:

Du coup deux solution:

supprimer :

width="{$largeSize.width}" height="{$largeSize.height}"

 

Ou overider le CategoryController: pour chaque boutique

 $this->context->smarty->assign(array(
  'category' => $this->category,
  'products' => (isset($this->cat_products) && $this->cat_products) ? $this->cat_products : null,
  'id_category' => (int)$this->category->id,
  'id_category_parent' => (int)$this->category->id_parent,
  'return_category_name' => Tools::safeOutput($this->category->name),
  'path' => Tools::getPath($this->category->id),
  'add_prod_display' => Configuration::get('PS_ATTRIBUTE_CATEGORY_DISPLAY'),
  'categorySize' => Image::getSize('category_default'),
  'mediumSize' => Image::getSize('medium_default'),
  'thumbSceneSize' => Image::getSize('m_scene_default'),
  'homeSize' => Image::getSize('home_default'),
  'allow_oosp' => (int)Configuration::get('PS_ORDER_OUT_OF_STOCK'),
  'comparator_max_item' => (int)Configuration::get('PS_COMPARATOR_MAX_ITEM'),
  'suppliers' => Supplier::getSuppliers()
 ));

Edited by jd440 (see edit history)
Link to comment
Share on other sites

  • 1 month later...
  • 2 weeks later...

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...