[Tipp] Gallery Helper

Diskussionen zur Smarty-Template-Engine
Post Reply
nicmare
Power Poster
Power Poster
Posts: 1150
Joined: Sat Aug 25, 2007 9:55 am
Location: Berlin

[Tipp] Gallery Helper

Post by nicmare »

Es ist nichts besonderes aber für den einen oder anderen vielleicht ganz hilfreich!
Wenn ich zB 20 Seiten angelegt habe, und zwei davon benutzen Module, die wiederum Bilder einbetten, die ne Lightboxfunktion bekommen sollen, habe ich früher immer im Haupttemplate die Javascriptbefehle eingetippt. Nachteil: Dieser Code erscheint auf jeder Seite. Auch dort, wo er garnicht benötigt wird. Man könnte den Code natürlich in einem udt oder global content block auslagern und im Zieltemplate abrufen aber dann würde der Code im BODY erscheinen was für mich ein NO-GO ist.
Was habe ich also gemacht: ein Template im Gallery Modul angelegt und es "helper" genannt.
1. Das Template ist leer.
2. bei CSS stehen nur die Formatierungen für die Lightbox
3. das Javascript für die Lightbox

Und im Modul (bspw. Products oder Availibilty) kann man dann im Summary oder Detailtemplate einfach {Gallery template="helper"} in die erste Zeile schreiben.
Nun wird mein Javascriptcode nur dann geladen, wenn es auch nur wirklich gebraucht wird. Und an der richtigen Stelle (HEAD).

Ein kleiner aber feiner Trick für mich. Vielleicht nutzt es jemanden was. Danke auch nochmal an Jos für sein tolles Modul :-)

EDIT, hier ein Beispiel für Products Detailtemplate:
{* this is a sample product detail template *}
{Gallery template="helper"}

Code: Select all

{Gallery template="helper"}
<div class="product-item">

<h3>{$entry->product_name}</h3>

{foreach from=$entry->fields key='name' item='field'}
	{if isset($field->value)}
		{capture assign=imagethumbnail}{$entry->file_location}/{$field->value}{/capture}
		<a href="{$entry->file_location}/{$field->value}" rel="lightbox">{supersizer path=$imagethumbnail width=100}</a>
	{/if}
{/foreach}


<div class="product-desc">
{$entry->details}
</div>

</div>
Last edited by nicmare on Wed Aug 04, 2010 3:45 pm, edited 1 time in total.
cyberman

Re: [Tipp] Gallery Helper

Post by cyberman »

Danke für den Tipp!

Du könntest das Javascript aber auch in die Meta-Daten der einzelnen Seiten einfügen (Registerkarte Optionen) oder aber das Javascript im Template nur in Abhängigkeit vom $page_alias einfügen lassen ;).
nicmare
Power Poster
Power Poster
Posts: 1150
Joined: Sat Aug 25, 2007 9:55 am
Location: Berlin

Re: [Tipp] Gallery Helper

Post by nicmare »

genau. aber da "vergesse" ich es immer. oder fande es zu umständlich. so habe ich es immer an einer zentralen stelle. für mich persönlich ists die angenehmste methode.
Post Reply

Return to “Smarty-Tipps und -Tricks”