Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.
Seiten: 1
#1 10. Februar 2012 11:21
- serialpark
- probiert CMS/ms aus
- Ort: Berlin
- Registriert: 24. Januar 2012
- Beiträge: 52
title attribut für Gallery {$pagelinks}
Hallo, ich doktor nun schon eine weile an meiner Gallery und hätte gerne titel für meine pagelinks.
hab es erst mit
{assign var='page_link_title' value='" title="'|cat:$image->titlename|cat:'">'}
{$pagelinks|replace:'">':$page_link_title}
versucht aber dann wird für jeden punkt der gleiche (aktuelle) titlename vergeben.
kommt man an die schleife von $pagelinks irgendwie ran?
Beitrag geändert von serialpark (10. Februar 2012 11:24)
Offline
#2 10. Februar 2012 14:57
- mike-r
- arbeitet mit CMS/ms
- Registriert: 21. Dezember 2010
- Beiträge: 898
- Webseite
Re: title attribut für Gallery {$pagelinks}
Was meinst Du konkret mit Pagelinks?
Im Template Fancybox gibt mir (standard):
[...]
{if $image->isdir}
<a href="{$image->file}" title="{$image->titlename}"><img src="{$image->thumb|escape:'url'|replace:'%2F':'/'}" alt="{$image->titlename}" /></a><br />
[...]
Korrekt den "Seiten"-Titel der untergeordneten Galerie aus.
Unablässige Tools für's Webdevelopement/ Fehlerfindung: CSS Validierungsservice, Bildschirmlineal, Firebug, Tidy, Deutsche CSS-Referenz
Offline
#3 10. Februar 2012 15:22
- serialpark
- probiert CMS/ms aus
- Ort: Berlin
- Registriert: 24. Januar 2012
- Beiträge: 52
Re: title attribut für Gallery {$pagelinks}
ja das hab ich schon...
zur erklärung. ich nutze das gallerymodul etwas anders.
jede seite zeigt nur ein einziges großes bild an. die navigation läuft über die gallery variable {$pagelinks} - links to each existing page nun ist die frage, wie komm ich an die page links ran?!
über das gallerytree template lassen sich die seiten ($pagelinks) auch nicht direkt ansteuern nur die bilder an sich.
Beitrag geändert von serialpark (10. Februar 2012 15:32)
Offline
#4 10. Februar 2012 17:09
- NaN
- Moderator
- Ort: Halle (Saale)
- Registriert: 09. November 2010
- Beiträge: 4.437
Re: title attribut für Gallery {$pagelinks}
Das lässt sich so leider garnicht realisieren, ohne das Gallery-Modul zu ändern.
Datei: action.default.php - Zeile: 298 - 308
$pagelinks = '';
for ($i = 0; $i < ceil($itemcount/$number); $i++)
{
$paramslink['start'] = ($i * $number) + 1;
$prettyurl = $urlprefix . $paramslink['dir'] . '/' .
(isset($paramslink['number']) ? $paramslink['start'] . '-' . $paramslink['number'] . '-' : '') .
(isset($paramslink['show']) ? $paramslink['show'] . '-' : '') .
($targetpage!=''?$targetpage:$returnid);
$pagelinks .= ($paramslink['start'] != $start ? $this->CreateFrontendLink($id, ($targetpage!=''?$targetpage:$returnid), 'default', $i + 1, $paramslink, '', false, true, '', false, $prettyurl) : ('<em>' . ($i + 1) . '</em>'));
}
$smarty->assign('pagelinks', $pagelinks);
ändern in:
$pagelinks = '';
$pageurls = array(); # added by NaN
for ($i = 0; $i < ceil($itemcount/$number); $i++)
{
$paramslink['start'] = ($i * $number) + 1;
$prettyurl = $urlprefix . $paramslink['dir'] . '/' .
(isset($paramslink['number']) ? $paramslink['start'] . '-' . $paramslink['number'] . '-' : '') .
(isset($paramslink['show']) ? $paramslink['show'] . '-' : '') .
($targetpage!=''?$targetpage:$returnid);
$pagelinks .= ($paramslink['start'] != $start ? $this->CreateFrontendLink($id, ($targetpage!=''?$targetpage:$returnid), 'default', $i + 1, $paramslink, '', false, true, '', false, $prettyurl) : ('<em>' . ($i + 1) . '</em>'));
$pageurls[] = ($paramslink['start'] != $start ? $this->CreateFrontendLink($id, ($targetpage!=''?$targetpage:$returnid), 'default', $i + 1, $paramslink, '', true, true, '', false, $prettyurl) : ''); # added by NaN
}
$smarty->assign('pagelinks', $pagelinks);
$smarty->assign_by_ref('pageurls', $pageurls); # added by NaN
Somit hast Du eine Variable {$pageurls} im Template und kannst in einer foreach-Schleife die Links selber individuell zurechtbasteln.
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 10. Februar 2012 17:37
- serialpark
- probiert CMS/ms aus
- Ort: Berlin
- Registriert: 24. Januar 2012
- Beiträge: 52
Re: title attribut für Gallery {$pagelinks}
cool! danke! ich probiers gleich mal aus!
Offline
#6 11. Februar 2012 13:17
- serialpark
- probiert CMS/ms aus
- Ort: Berlin
- Registriert: 24. Januar 2012
- Beiträge: 52
Re: title attribut für Gallery {$pagelinks}
<ul>
{foreach from=$pageurls item=url}
<li><a href="{$url}" title="{$image->titlename}">{$image->titlename}</a></li>
{/foreach}
</ul>
funktioniert schon ganz gut. der link der aktuellen seite wird nicht geladen, das ist aber erstmal nicht so wichtig.
auch wenn der code die links in der schleife nacheinander ausgibt, so wird die $image variable {$image->titlename} natürlich nicht mit geloopt, und jeder link bekommt den gleichen titlenamen.
würde ich $pageurls in der $images schleife in meinem gallerytemplate und dann ins template schreiben {Gallery dir="bla" tempalte="meins"}:
<ul>
{foreach from=$images item=image}
<li><a href="{$pageurls}" title="{$image->titlename}">{$image->titlename}</a>
{/foreach}
</ul>
hätte zwar jeder link einen eigenen titel aber das $pageurls array ist leer, weil es keine seiten gibt.
Beitrag geändert von serialpark (11. Februar 2012 13:18)
Offline
#7 11. Februar 2012 14:01
- NaN
- Moderator
- Ort: Halle (Saale)
- Registriert: 09. November 2010
- Beiträge: 4.437
Re: title attribut für Gallery {$pagelinks}
Hä?
Du willst den Titel eines Bildes, welches erst auf der nächsten Seite kommt?
Und diesen Titel willst Du für den Pagelink verwenden?
Dazu müsstest Du erst alle Bilder vom Gallery Modul auslesen lassen.
Und dann macht es keinen Sinn, das auf mehrere Seiten zu verteilen.
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
#8 11. Februar 2012 14:47
- mike-r
- arbeitet mit CMS/ms
- Registriert: 21. Dezember 2010
- Beiträge: 898
- Webseite
Re: title attribut für Gallery {$pagelinks}
Und dann macht es keinen Sinn, das auf mehrere Seiten zu verteilen.
Wenn ich das richtig verstehe ist das Ziel eine Art statische Galerie (mit einzelnen Bildern zum weiterklicken) zu bauen ohne den JS-Kram. Und da ist das schon sinnvoll (incl. title auf den Seitenlinks).
Wenn ich mich recht entsinne, gabs da im Album ein Template dafür, weiss aber nicht, wie weit das an Gallery anpassbar ist.
Beitrag geändert von mike-r (11. Februar 2012 14:50)
Unablässige Tools für's Webdevelopement/ Fehlerfindung: CSS Validierungsservice, Bildschirmlineal, Firebug, Tidy, Deutsche CSS-Referenz
Offline
#9 11. Februar 2012 15:01
- NaN
- Moderator
- Ort: Halle (Saale)
- Registriert: 09. November 2010
- Beiträge: 4.437
Re: title attribut für Gallery {$pagelinks}
Wie wäre es mit einem Gallery-Template, welches alle Bilder anzeigt?
Für jedes Bild erstellt man einen Pagelink.
Dieser Link verweist auf die gleiche Seite aber hängt die Bild-ID mit dran.
Dann geht man nochmal alle Bilder durch und prüft, ob die übergebene ID gleich dem Aktuellen Bild entspricht.
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
#10 11. Februar 2012 15:57
- serialpark
- probiert CMS/ms aus
- Ort: Berlin
- Registriert: 24. Januar 2012
- Beiträge: 52
Re: title attribut für Gallery {$pagelinks}
sagen wir meine galerie hat 6 bilder. Maximum number of items per page: steht auf 1, so dass auf jeder seite nur 1 bild zusehen ist. auf der rechten seite gibt es dann eine liste mit links, jeder link soll zu seiner bildseite führen und ausserdem den namen seines bildes haben.
<li><a href="http://www.xyz.de/gallery/testalbum/1-1-92" title="bildname">bildname</a></li>
<li><a href="http://www.xyz.de/gallery/testalbum/2-1-92" title="bildname2">bildname2</a></li>
usw...
Beitrag geändert von serialpark (11. Februar 2012 15:58)
Offline
#11 11. Februar 2012 16:39
- NaN
- Moderator
- Ort: Halle (Saale)
- Registriert: 09. November 2010
- Beiträge: 4.437
Re: title attribut für Gallery {$pagelinks}
Wie wäre es mit einem Gallery-Template, welches alle Bilder anzeigt?
Für jedes Bild erstellt man einen Pagelink.
Dieser Link verweist auf die gleiche Seite aber hängt die Bild-ID mit dran.
Dann geht man nochmal alle Bilder durch und prüft, ob die übergebene ID gleich dem Aktuellen Bild entspricht.
Also sagen wir Maximum number of items per page: steht nicht auf 1, sodass auf jeder Seite theoretisch alle Bilder zu sehen wären.
Und jetzt bitte 1 und 1 zusammenzählen.
Das Template so aufbauen, dass die Page-Links eben nicht aus den {$pagelinks} oder den {$pageurls} generiert werden - also aus nichts, was tatsächlich mit den Gallery-Seiten zu hat - sondern stattdessen das tatsächliche Bilder-Array nehmen.
Anzahl der Bilder = Anzahl der Seiten, oder?
Also. Bingo!
Ein Bild = Ein Pagelink.
Also. Bingo!
Alle Bilder durchgehen, für jedes Bild einen Pagelink, als URL eines jeden Pagelinks die URL der aktuellen Seite nochmal nehmen aber die ID des Bildes hintendranhängen:
<a href="...&image_id={$ ... wie auch immer die variable heißt}">{$...}</a>
Danach exakt die gleiche Schleife nochmal, nur diesmal in der Schleife prüfen, ob die image_id existiert, wenn nicht, das erste bild anzeigen, wenn ja, prüfen ob image_id mit der Bild-ID übereinstimmt, wenn ja, Bild anzeigen ... wieso habe ich das Gefühl, mich zu wiederholen?
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
#12 13. Februar 2012 11:55
- serialpark
- probiert CMS/ms aus
- Ort: Berlin
- Registriert: 24. Januar 2012
- Beiträge: 52
Re: title attribut für Gallery {$pagelinks}
danke für deine hilfe.
Offline
Seiten: 1