Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.

#1 30. Januar 2013 13:19

hinti
hat von CMS/ms gehört
Registriert: 29. November 2011
Beiträge: 13

Gallery - ein Bild und Link zum öffnen der Gallerie

Hallo zusammen,

hoffe auf diesem Wege Hilfe zu finden.

Habe den Template-Code im Gallery Modul für meine Ansprüche umgeändert.
Das Template mit einer Tabelle angepasst.
Das Problem ist nun, dass beim Öfffnen der Gallerie das erste Bild doppelt angezeigt wird.
Kann mir da jemand einen Tip geben, was ich da falsch mache?

Vorschau

<div class="gallery">  {assign var='firstimage' value='1'}
{foreach from=$images item=image}    
{if $firstimage}
<div class="img">             
{if !empty($image->comment)}    <a class="group" href="{$image->file|escape:'url'|replace:'%2F':'/'}" title="{$image->comment}" rel="prettyPhoto[{$galleryid}]" ><img  class="img"  src="{$image->thumb|escape:'url'|replace:'%2F':'/'}" alt="{$image->titlename}" /></a>

{else}

<table style="width: 674px; height: 6px;" border="0">
<tbody>
<tr>
<td style="text-align: left;" valign="top"><strong>{$gallerytitle}<br /><br /></strong><a class="group" href="{$image->file|escape:'url'|replace:'%2F':'/'}" title="{$image->titlename}" rel="prettyPhoto[{$galleryid}]">Gallerie</a><br /></td> <td style="width: 75px;"><img src="images/spacer.png" alt="" width="31" height="12" /></td> <td style="text-align:"left"; width: 300px;" valign="top"><a class="group" href="{$image->file|escape:'url'|replace:'%2F':'/'}" title="{$image->titlename}" rel="prettyPhoto[{$galleryid}]"><img  class="img"  src="{$image->thumb|escape:'url'|replace:'%2F':'/'}" alt="{$image->titlename}" /></a>
</td>
</tr>
</tbody>
</table> 

{/if}
{assign var='firstimage' value='0'}

{else} 

<div class="hide"> 

{if !empty($image->comment)}    <a class="group hide" href="{$image->file|escape:'url'|replace:'%2F':'/'}" title="{$image->comment}" rel="prettyPhoto[{$galleryid}]" >{* *}</a> 

{else}

<a class="group hide" href="{$image->file|escape:'url'|replace:'%2F':'/'}" title="{$image->titlename}" rel="prettyPhoto[{$galleryid}]">{* *}</a> 
{/if}
{/if}
</div>
{/foreach} <div class="galleryclear">&nbsp;</div> </div>

Vielen Dank im Voraus

Hinti

Offline

#2 30. Januar 2013 13:51

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.437

Re: Gallery - ein Bild und Link zum öffnen der Gallerie

Entweder fehlt da was oder das Template ist murks (und damit meine ich ausnahmsweise mal nicht die Tabellen). Da sind zwei {else} und ein {/foreach} zu viel. Ist das wirklich das komplette Template?


Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline

#3 31. Januar 2013 13:16

hinti
hat von CMS/ms gehört
Registriert: 29. November 2011
Beiträge: 13

Re: Gallery - ein Bild und Link zum öffnen der Gallerie

Das folgende Template hat keine Tabellen und funktioniert einwandfrei.
Was ist da anders?
Hat jemand eine Idee??

<div class="gallery"> 
{assign var='firstimage' value='1'}
{foreach from=$images item=image}
{if $firstimage} 

<div class="img">
{if !empty($image->comment)}
<a class="group" href="{$image->file|escape:'url'|replace:'%2F':'/'}" title="{$image->comment}" rel="prettyPhoto[{$galleryid}]" ><img  class="img"  src="{$image->thumb|escape:'url'|replace:'%2F':'/'}" alt="{$image->titlename}" /></a>

{else}

<a class="group" href="{$image->file|escape:'url'|replace:'%2F':'/'}" title="{$image->titlename}" rel="prettyPhoto[{$galleryid}]"><img  class="img"  src="{$image->thumb|escape:'url'|replace:'%2F':'/'}" alt="{$image->titlename}" /> <p> Gallerie &ouml;ffnen </p> </a>

{/if}

{assign var='firstimage' value='0'}
{else}

<div class="hide"> 
{if !empty($image->comment)} 
<a class="group hide" href="{$image->file|escape:'url'|replace:'%2F':'/'}" title="{$image->comment}" rel="prettyPhoto[{$galleryid}]" >{* *}</a>

{else}
<a class="group hide" href="{$image->file|escape:'url'|replace:'%2F':'/'}" title="{$image->titlename}" rel="prettyPhoto[{$galleryid}]">{* *}</a>
{/if}
{/if}
</div>
{/foreach}
<div class="galleryclear">&nbsp;</div> </div>

Gruss

hinti

Offline

#4 31. Januar 2013 14:22

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.437

Re: Gallery - ein Bild und Link zum öffnen der Gallerie

Sorry, irgendwie muss ich gestern blöd gewesen sein.
Keine Ahnung woher ich mir die überflüssigen Tags eingebildet habe.
Dein Tabellen-Template ist tatsächlich nicht viel anders.

Der Unterschied besteht darin, das Du in der Tabelle zweimal auf das erste Bild der Gallery verlinkst. Einmal mit dem Link "Gallerie" unter dem Titel der Gallery. Und einmal mit dem ersten Vorschaubild der Gallery. Beide sind mit dem ersten Bild der Gallery verlinkt und haben das Attribut rel="prettyPhoto...".

Das Javascript der Gallery nimmt sich alle Links mit diesem Attribut und erstellt daraus dann das Overlay mit den Vorschaubildern und den Großbildern. Dadurch wird das erste Bild eben zweimal angezeigt, weil es im Template eben auch zweimal auftaucht.


Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline

#5 01. Februar 2013 13:12

hinti
hat von CMS/ms gehört
Registriert: 29. November 2011
Beiträge: 13

Re: Gallery - ein Bild und Link zum öffnen der Gallerie

Danke für die Antwort,

was kann ich daran ändern, dass es das erste Bild nicht doppelt aufgeruft wird?
Habe schon einiges ausprobiert, bin aber immer an Fehlern gescheitert.
Auch in der Dokumentation von PrettyPhoto kann ich nichts brauchbares finden.
http://www.no-margin-for-errors.com/pro … mentation/

Bitte um einen Lösungsansatz.

Gruss

Hinti

Offline

#6 01. Februar 2013 15:11

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.437

Re: Gallery - ein Bild und Link zum öffnen der Gallerie

Den habe ich Dir gegeben: Einfach nicht zweimal auf das Bild verlinken.


Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline

#7 01. Februar 2013 15:47

hinti
hat von CMS/ms gehört
Registriert: 29. November 2011
Beiträge: 13

Re: Gallery - ein Bild und Link zum öffnen der Gallerie

Vielen Dank,

vielleicht versuche ich die Frage mal umzuformulieren:

Wie kann ich auf einen Link die Gallerie verknüpfen, so dass das erste Bild nur einmal angezeigt wird und sich die Einträge nicht gegenseitg beissen?

Gruss

hinti

Offline

#8 01. Februar 2013 17:39

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.437

Re: Gallery - ein Bild und Link zum öffnen der Gallerie

Du musst Dich entscheiden, ob die Galerie mit dem Text-Link "Gallerie" unter dem Titel der jeweiligen Galerie oder mit dem Bild-Link geöffnet werden soll. D.h. eins von beiden darf nicht verlinkt werden (oder darf das Attribut rel="prettyPhoto ... " nicht haben) bzw. muss da raus.

<table style="width: 674px; height: 6px;" border="0">
<tbody>
<tr>
<td style="text-align: left;" valign="top"><strong>{$gallerytitle}<br /><br /></strong>

{* Dieser Link muss raus oder entschärft werden: *}

<a class="group" href="{$image->file|escape:'url'|replace:'%2F':'/'}" title="{$image->titlename}" rel="prettyPhoto[{$galleryid}]">Gallerie</a><br /></td> 

{* --- *}

<td style="width: 75px;"><img src="images/spacer.png" alt="" width="31" height="12" /></td> <td style="text-align:"left"; width: 300px;" valign="top"><a class="group" href="{$image->file|escape:'url'|replace:'%2F':'/'}" title="{$image->titlename}" rel="prettyPhoto[{$galleryid}]"><img  class="img"  src="{$image->thumb|escape:'url'|replace:'%2F':'/'}" alt="{$image->titlename}" /></a>
</td>
</tr>
</tbody>
</table> 

Du kannst mit diesem prettyPhoto-Javascript nicht zweimal auf dasselbe Bild verlinken und erwarten, dass das Script schon selbst erkennt, dass da etwas doppelt ist. Das gibt das Script einfach nicht her. Dazu müsste man das Script überarbeiten. Aber da würde ich eher die prettyPhoto Jungs befragen. Die kennen sich da besser aus.

PS: Galerie schreibt man im Deutschen mit nur einem L wink


Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline