Jump to content
ChDUP

affichage des miniatures de sous-catégories

Recommended Posts

Bonjour à toutes et tous

 

Je vois que dans les dernières versions 1.6.x, un champ "miniature de la catégorie" est apparu.

Pratique pour faire une miniature différente de l'image "principale.

 

J'ai créé un format medium_subcategory que j'ai attribué au type "catégories"

Dans mon tpl, j'essaie d'afficher les miniatures via

$link->getCatImageLink($subcategory.link_rewrite, $subcategory.id_image, 'medium_subcategory')|escape:'html':'UTF-8'}

Je me retrouve avec 3 cas différents :

- Si la catégorie n'a pas d'image "principale", alors je n'ai aucune miniature, même si elle est bien entrée dans le BO.

 

Si la catégorie a bien une image "principale", j'ai 2 cas que je n'arrive pas à différencier

- Le premier m'affiche à la place de la miniature l'image principale, dans le format medium_subcategory demandé

- Le second cas est le bon, il affiche bien la bonne miniature

 

Dans les 3 cas, l'image générée par smarty est du type

/c/22-medium_subcategory/category1.jpg

 

une aide est la bienvenue pour comprendre ce qu'il se passe !  :huh2:

Share this post


Link to post
Share on other sites

effectivement, le souci vient de la function getSubCategories

foreach ($result as &$row) {
            $row['id_image'] = (Tools::file_exists_cache(_PS_CAT_IMG_DIR_.(int)$row['id_category'].'.jpg') || Tools::file_exists_cache(_PS_CAT_IMG_DIR_.(int)$row['id_category'].'_thumb.jpg')) ? (int)$row['id_category'] : Language::getIsoById($id_lang).'-default';
            $row['legend'] = 'no picture';
        }

La double condition à base de Tools::file_exists_cache ne renvoie rien.

Alors que le fichier _PS_CAT_IMG_DIR_.(int)$row['id_category'].'_thumb.jpg' existe bien.

 

Je ne comprend pas comment fonctionne Tools::file_exists_cache

 

J'ai vu le même problème ici :

https://stackoverflow.com/questions/36022466/prestashop-category-thumbnail-without-cover-image

Mais la solution donnée ne fonctionne pas pour moi.

Les 2 conditions Tools::file_exists_cache ne renvoient rien.

Share this post


Link to post
Share on other sites

il retourne bien 22 , qui est l'idée de la sous-catégorie .... je ne comprend plus rien.

le cache  s'est créé maintenant ?

en tous cas, je n'affiche toujours pas ma miniature

Share this post


Link to post
Share on other sites

ok et donc 22_thumb.jpg existe t-il bien ?

le fichier a t'il les bon droit de lecture ?

 

sinon y a t il pas un truc avec le cache de prestashop ?

Share this post


Link to post
Share on other sites

img/c/22_thumb.jpg existe bien

il est en 664

 

Mais ce que le tpl essaie d'afficher c'est

/c/22-medium_subcategory/category1.jpg

et img/c/22-medium_subcategory.jpg n'existe pas

 

j'ai regénéré les miniatures sans succès.

Share this post


Link to post
Share on other sites

il fonctionnait ... ce n'est plus le cas.

Je m'y perd car ça semble variable.

 

A l'instant T, j'ai 3 sous-catégories avec des ID 22 23 24

dans l'admin, les 3 ont des miniatures

la #23 est la seule à avoir une image de catégorie.

 

coté front, il n'est affiché que la miniature de la #23

 

au niveau des fichiers :

23.jpg et 23-medium_subcategory.jpg existent

rien pour 22 et 24

les 3 fichiers 22_thumb.jpg 23_thumb.jpg 24_thumb.jpg existent

 

je réupload les miniatures de #22 et #24, les fichiers _subcategory ne se créent pas, uniquement le _thumb et le medium_default

Share this post


Link to post
Share on other sites

Oups,

 

J'ai écris de la "merde"

 

Tu vides bien les caches entre chaque upload ?

 

Ca fonctionne bien en 1.6.1.12

Edited by okom3pom (see edit history)

Share this post


Link to post
Share on other sites

tu parlais des miniatures de menu.

oui je vide le cache.

 

sur 1.6.1.12, tu mets une image de miniature, pas d'image de catégorie, et coté front, ça affiche bien la miniature de la sous-catégorie sur la page de la catégorie parente ?

Quel est le code qui t'affiche l'image dans ton category.tpl ?

Share this post


Link to post
Share on other sites

vu

peux-tu essayer maintenant de créer un type d'image dédié ?

autre que medium_default

Share this post


Link to post
Share on other sites

A oui c'est un beau bordel :) 

En faite tout ce passe dans le AdminCategoriesController 

 

Il ne crée que le format medium 

 

Tu peux donc changer le format ligne :879

  • Like 1

Share this post


Link to post
Share on other sites

Si tu veux plusieurs formats, il faudra commenter la condition ou l'image est envoyée dans le dossier /img/tmp/

 

Et remplacer les $tmpName par $_FILES[$name]['tmp_name']

  • Like 1

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

×
×
  • Create New...

Important Information

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