THELIA Forum

Welcome to the THELIA support and discusssion forum

Announcement

Rejoignez la communauté sur le Discord Thelia : https://discord.gg/YgwpYEE3y3

Offline


Bonjour,
j'ai installé le module " LoopPseDocument " afin que je puisse manipuler les documents associés aux differentes combinaisons des declianison , en fait , mes documents contiennent des images  que je veux les affichés mais j'y réussit pas sad
voici mon code :
{loop name="pse" type="product_sale_elements" product="$product_id"}
                            {loop name="combi" type="attribute_combination" product_sale_elements="$ID"  product="$product_id"}
                                {if $ATTRIBUTE_ID == 7}
                                    {loop type="product-sale-elements-document" name="product-sale-elements-document" source="product" product_sale_elements_id="$ID"}
                                         doc: {$PRODUCT_DOCUMENT_ID}
                                              <img src="{$IMAGE_URL nofilter}" alt="{$TITLE}" class="img-responsive" style="width: 100% ; height: 100%" >
                                       {/loop} 
                                {/if}
                            {/loop}
{/loop}

Aidez-moi SVP sad

Last edited by jaballah_rihab (09-06-2015 17:25:18)

Offline


{loop type="product-sale-elements-document" name="product-sale-elements-document" source="product" product_sale_elements_id="$ID"}

Attention, à cet endroit, $ID est un ID de combinaison (puisque tu es dans une boucle attribute_combination), et non pas un ID de PSE.

 <img src="{$IMAGE_URL nofilter}"

Tu le sort d'où le $IMAGE_URL ? La boucle product-sale-elements-document a une variable $IMAGE_URL ?


OpenStudio Toulouse

Offline


merci pour votre réponse ,
mon probléme que je sais pas comment utiliser la boucle des document des PSE à chaque que j'essai une tentative je réuissi pas sad .
voici mon code :
{loop name="pse" type="product_sale_elements" product="$product_id"}
                    {loop name="combi" type="attribute_combination" product_sale_elements="$ID"  product="$product_id"}
                             {loop type="product-sale-elements-document" name="product-sale-elements-document" source="product" product_sale_elements_id="$product_id"}
                                doc: {$PRODUCT_DOCUMENT_ID}
                            {/loop}
                    {/loop}
{/loop}
je veux pour l'instant juste afficher l'ID du document ,mais ça ne marche pas sad

Offline


Je crois qu'avant tout, il te faut comprendre ce que tu fais. L'imbrication des boucles telle que tu l'a écrite n'a aucun sens. Il te faut comprendre ce que retourne chaque boucle, et quelles variables on peut utiliser. Tout ça, c'est dans la doc des boucles: http://doc.thelia.net/en/documentation/loop/index.html

Exemple d'imbrication qui pourrait marcher pour afficher le titre de tous les documents associés à tous les PSE d'un produit :

1) {loop name="pse-du-produit" type="product_sale_elements" product="$product_id"}  = je récupère les PSE du produit ID=$product_id
2) {loop name="document-du-pse" type="product-sale-elements-document" source="product" product_sale_elements_id="$ID"} = je récupère le document associé au PSE courant
3) {loop name="detail-du-document" type="document" id=$PRODUCT_DOCUMENT_ID} = je récupère le document associé au PSE
4) doc: {$TITLE} = j'affiche le titre du document


OpenStudio Toulouse

Offline


merci pour votre reponse , voici mon code :
{loop name="pse-du-produit" type="product_sale_elements" product="$product_id"}
   {loop name="document-du-pse" type="product-sale-elements-document" source="product" product_sale_elements_id="$ID"}
        {loop name="detail-du-document" type="document" id="$PRODUCT_DOCUMENT_ID"}
              doc: {$TITLE}
        {/loop}
  {/loop}
{/loop}

j'aurai cette erreur : Le message d'erreur suivant a été trouvé : Class LoopPseImage\Loop\ProductSaleElementsDocument does not exist
malgré le module LoopPseDocument  est bien installé !!! sad

Offline


Vidage du cache ?


OpenStudio Toulouse

Offline


l'erreur persiste malgré que  j'ai vidé le cache pas mal de fois  :'(

Offline


Alors le module n'est pas installé.


OpenStudio Toulouse

Offline


le module est bien installé ,SVP monsieur je suis pas ce point inattentif -_- ,j'ai pas pu vous faire un imprime ecran ici de mon backoffice pour vous convaincre que le module est installé et bien activé ... je suis vraiment bloquée  !! :'(

Last edited by jaballah_rihab (10-06-2015 11:18:12)

Offline


Inutile de poster partout,  merci de continuer la discussion ici.


OpenStudio Toulouse

Offline


jaballah_rihab wrote:

le module est bien installé ,SVP monsieur je suis pas ce point inattentif -_- ,j'ai pas pu vous faire un imprime ecran ici de mon backoffice pour vous convaincre que le module est installé et bien activé ... je suis vraiment bloquée  !! :'(

Je demande,  hein,  on ne sait jamais.

As-tu bien supprimé a la main les répertoires caches/dev et cache/prod ?


OpenStudio Toulouse

Offline


ok , alors on s'en fout de ce module , je vais tenter une autre solution , en fait , j'ai 7 combinaisons dont chacune posséde 2 images (img1, img2) , pour accéder  à la 1 er img1 j'ai utiliser ce code et ça marche :
{loop name="pse" type="product_sale_elements" product="$product_id"}
       {loop name="combi" type="attribute_combination" product_sale_elements="$ID"  product="$product_id"}
               {if $ATTRIBUTE_ID == 7}
                        <div class="slide-item">
                            {loop type="product-sale-elements-image" name="product-sale-elements-image" product_sale_elements_id="$ID" limit="1" }
                                {loop type="image" name="image.pse"  source="product" id={$PRODUCT_IMAGE_ID}}
                                     <a href="javascript:;" onclick="image('{$IMAGE_URL nofilter}','{$TITLE}')";>
                                         <img src="{$IMAGE_URL nofilter}" alt="{$TITLE}" class="img-responsive" style="width: 100% ; height: 100%" >
                                    </a>
                                {/loop}
                            {/loop}
                        </div>
               {/if}
      {/loop}
{/loop}
mais je sais pas comment récupérer l'url de la 2 éme image ""img2 (c'est pourquoi j'ai tenté l'utilisation des documents associés aux PSE dans lesquelles je vais mettre ma 2 éme image et l'utiliser, mais malheureusement le module est buggé ) avez vous une idée comment accéder à la 2 éme image du PSE ?? merci .

Last edited by jaballah_rihab (10-06-2015 12:02:56)

Offline


On ne sait pas si le module est buggé.  As-tu bien supprimé a la main les répertoires caches/dev et cache/prod ?


OpenStudio Toulouse

Offline


oui

Offline


Un PSE = une combinaison.

Comme il n'y a qu'une seule image possible par combinaison, on ne peut pas récupérer de 2ème image.


OpenStudio Toulouse

Offline


alors pourquoi on peut associer autant d 'images qu'on veut aux combinaisons?

Last edited by jaballah_rihab (10-06-2015 13:44:31)

Offline


Ha oui, pardon, j'étais resté sur une ancienne version smile

Pour prendre la 2eme image, tu utilises les paramètres offset=1 limit=1 dans la boucle image.


OpenStudio Toulouse

Offline


Bonsoir,
Le module LoopPseDocument contenait bien une erreur, j'ai suis désolé.
Vous pouvez de nouveau le télécharger, l'erreur est corrigée.
Cordialement,

Last edited by MrGuillou (10-06-2015 19:34:48)


Développeur Web chez OpenStudio
Thelia Module, Thelia School, My GitHub, My Twitter

Offline


merci beaucoup MrGUILLO smile