THELIA Forum

Welcome to the THELIA support and discusssion forum

Announcement

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

Offline

#1 Set et Get sur thelia 2?

(03-07-2019 16:34:35)


Hello, juste une question sur les set et get de thelia 2.3.4 pour récupérer le titre sur la partie image,
sur thelia 1 on pouvais faire cela:

<THELIA_DOSSIER type="DOSSIER" id="#DOSSIER_ID">
#SET{urlContenu, #URL}#SET{titreDossier, #TITRE}
<THELIA_CONTENU type="CONTENU" classement="inverse" dossier="#ID">
#SET{titreContenu, #TITRE}
<T_IMAGE><THELIA_IMAGE type="IMAGE" num="1" contenu="#ID">
<a href="#GET{urlContenu}"><img src="#IMAGE" alt="#CONTTITRE" title="#CONTTITRE" />#GET{titreContenu}#GET{titreDossier}</a>
</THELIA_image></T_image><//T_image></THELIA_CONTENU></THELIA_DOSSIER>

Et sur thelia 2, j'ai tenté la substitution mais sans résultat:

 {loop name="folder" type="folder" id=$folder_id limit="1"}<a href="{url path='/step1'}" title="{$TITLE}">
{loop name="folder.image" type="image" source="folder" source_id={$ID} width="250" height="250" limit="1" resize_mode="borders"}
<img src="{$IMAGE_URL nofilter}" class="img-responsive" alt=""></a><div>{folder attr='title'}</div>
{/loop}</a>{/ifloop}{/loop}

et aussi qu'est ce qui remplace les boucles test pour faire des filtres ( y a t il un rapport avec smarty ? hmm)
Je m'y prend mal c'est sur mais j'ai cherché sur la doc http://doc.thelia.net et le forum sans succès.
Si quelqu'un à une réponse je l'en remercie d'avance.

Last edited by Yzzo (03-07-2019 16:55:34)

Offline

#2 Re: Set et Get sur thelia 2?

(03-07-2019 16:54:16)


Pas d'expérience sur Thelia 1 mais d'après ce que je vois le titre du dossier est enregistrer dans une variable utilisée plus tard au sein de la boucle image (pour ne pas interférer avec le titre au sein de la boucle image.

Dans Thelia 2 il faut procéder de la même manière tongue ce qui donne (par exemple)

{loop name="folder_content" type="content" folder="$ID"}
    {assign var="folderTitle" value="$TITLE"}
    {ifloop rel="content_thumbnail"}
        <a href="{$URL nofilter}" tabindex="-1" class="content-image overlay col-sm-2">
        {loop name="content_thumbnail" type="image" width="369" height="247" content=$ID limit="1"}
            <img src="{$IMAGE_URL nofilter}" class="img-responsive" alt="{$TITLE}">{$folderTitle}
        {/loop}
        </a>
    {/ifloop}
{/loop}

Le nofilter sur $IMAGE_URL est superflu je pense. Le tag retourne l'url absolue correcte cool

Offline

#3 Re: Set et Get sur thelia 2?

(03-07-2019 17:08:18)


Oui c'est exactement ça que je cherchai pour set et get merci pour ton aide ça résous une partie de mon problème, il me reste à voir pour le filtre test <(^_^(<

Offline

#4 Re: Set et Get sur thelia 2?

(03-07-2019 17:26:05)


Si tu parles des filtres (effets) sur les images, dans Thelia 2 cela se passe regarde dans la doc sur la boucle Image. Il est possible de spécifier une argument "effects" comme ceci :

{loop type="image" name="image_test" category="$ID" width="200" height="100" resize_mode="crop" effects="grayscale,gamma:1.1" limit="1"}
    <a href="{$ORIGINAL_IMAGE_URL}"><img src="{$IMAGE_URL}" alt="{$TITLE}" /></a>
{/loop}

Offline

#5 Re: Set et Get sur thelia 2?

(04-07-2019 09:21:34)


Salut, et non je parle pas de ces effets mais ça pourra toujours me servir si j'en ai l'utilité merci quand même, le filtre dont je parle sert en fait à utiliser un mot clé situé soit dans le titre ou chapo etc. et fait ressortir le résultat ( le(a) loop) si la valeur est vrai j'ai parcouru la doc je n'ai pas trouvé le même shéma ou alors c'est une méthode totalement différente.


PS: un truc super bizarre aussi que je viens de rencontrer qui n'à rien à voir c'est le fait de rentrer un mot de traduction dans le fichier lang fr_FR est qu'il fonctionne avec le répertoire default et en le duplicant et utilisant un répertoire de nom lambda il ne traduis plus ce mot; dans le bo en remettant le nom de la template par default ça remarche, j'ai tenté de faire la traduction en bo et aussi avec le ftp mettre les droits en 777 mais pas de résultat. Bref c'était une parenthèse au cas où c'était déjà arrivé. j'utilise le bo avec le titre d'un dossier pour contourner cela.

Last edited by Yzzo (04-07-2019 09:36:54)

Offline

#6 Re: Set et Get sur thelia 2?

(04-07-2019 09:54:50)


Merci pour cette précision. Pigé.

Tu devrais pouvoir trouver trouver ton bonheur dans la documentation. La plupart des boucle acceptent les attributs suivants search_in, search_mode, search_term qui te permette de filtrer les résultats en fonction en fonction d'une valeur donnée. Exemple pour Content Loop

Offline

#7 Re: Set et Get sur thelia 2?

(04-07-2019 21:08:52)


Pour alléger le code, tu peux écrire : {$folderTitle=$TITLE} au lieu de {assign var="folderTitle" value="$TITLE"}


OpenStudio Toulouse

Offline

#8 Re: Set et Get sur thelia 2?

(05-07-2019 10:18:47)


Salut, super merci pour le raccourci @roadster31 je vais de suite modifier cela, et merci @Nog je vais travailler sur les attributs search_in etc., j'avoue que j'y ai pensé mais pas osé l'utiliser car sur thélia 1 il existe les 2 types de boucle (recherche et test). Et si c'est bien ce que je pense ça rend bien plus facile à écrire ces attributs de cette manière, l’allègement du code aussi, j'entrevois la puissance et la facilité de ce nouveau langage sur thelia 2 franchement ça dépote.

Last edited by Yzzo (05-07-2019 10:28:12)

Offline

#9 Re: Set et Get sur thelia 2?

(06-07-2019 16:57:09)


Yzzo wrote:

PS: un truc super bizarre aussi que je viens de rencontrer qui n'à rien à voir c'est le fait de rentrer un mot de traduction dans le fichier lang fr_FR est qu'il fonctionne avec le répertoire default et en le duplicant et utilisant un répertoire de nom lambda il ne traduis plus ce mot; dans le bo en remettant le nom de la template par default ça remarche, j'ai tenté de faire la traduction en bo et aussi avec le ftp mettre les droits en 777 mais pas de résultat. Bref c'était une parenthèse au cas où c'était déjà arrivé. j'utilise le bo avec le titre d'un dossier pour contourner cela.

Salut je reviens sur ce point que j'avais constaté, alors ça m'a pris la tête comme il faut, mais j'ai compris pourquoi ça éclatait les traductions et même les placeholder des input sur la page contact, en gros dans le BO si on s'amuse à renommer le répertoire "default" pour le FO en "lambda" il fait ce problème même si les 2 répertoires sont toujours sur le ftp, je remet le "default" en config ça revient à la normal. Possible que ça vient de l'hébergeur j'ai pas testé, après 5 réinstall sur lws à chercher j'ai eu la flemme de testé chez ovh -_- ou voir le htaccess. Bref si ça peux aider qui-que se soit tant mieux. (test sur thélia 2.3.4 et 2.3.5)

Offline


Dans layout.tpl, remplacer {default_translation_domain domain='fo.default'} par {default_translation_domain domain='fo.lambda'}.

Même chose dans ajax/order-delivery-module-list.html et includes/addedToCart.html

Comme ça les traduction seront d'abord recherchées dans templates/frontOffice/lambda/I18n au lieu de templates/frontOffice/default/I18n


OpenStudio Toulouse

Offline


roadster31 wrote:

Dans layout.tpl, remplacer {default_translation_domain domain='fo.default'} par {default_translation_domain domain='fo.lambda'}.

Même chose dans ajax/order-delivery-module-list.html et includes/addedToCart.html

Comme ça les traduction seront d'abord recherchées dans templates/frontOffice/lambda/I18n au lieu de templates/frontOffice/default/I18n

Salut, et bien merci pour l'info ^_^ je le saurai pour la suite, dommage que se soit pas automatisé en terme d'arborescence peut-être à la prochaine version big_smile .

Last edited by Yzzo (09-07-2019 10:01:57)

Offline


Que veux-tu dire par "automatisé" ?


OpenStudio Toulouse

Offline


Salut, et bien je pensais qu'il serait possible que si les rename en back office sur configuration template était renommé cela prendrait la valeur aussi sur les fichier html, comme quand on édite le titre d'un dossier, il applique l'écrit pour le dossier concerné en loop.
Un exemple comme cela ou qui s'en rapproche:

{default_translation_domain domain='fo.'$DOSSIER_TEMPLATE''}