Galerie mit Pagination - Seitenwechsel Anker
Hallo.
Folgende Problematik:
Ich habe auf einer Seite mehrere Galerien (Coremodul). Diese befinden sich relativ weit unten auf der Seite und deren Bilder werden auf mehrere Seiten verteilt (Pagination).
Nun springt man beim Klick auf die nächste Seite immer ganz nach oben. Der Wunsch ist es, eben immer auf der Höhe der Galerie zu landen.
Erste Idee war die Pagination über das Template mit Ankern zu versehen. Das funktioniert zum Teil. Aber:
1. Es gibt nur ein ganz allgemeines Paginationstemplate, das wohl für jederlei Pagination in Contao gilt. Wie kann ich jeder Galerie (auf der gleichen Seite z.B.) eine eigene Pagination zuweisen um das richtige Anspringen zu ermöglichen?
Ich hab mir schon die Ext. template_override angesehen, aber damit kann ich ja pro Contentelement eben nur ce_* Templates mitgeben (was beim ce_gallery-Template auch nicht zu funktionieren scheint - meine Galerie-Items verschwinden dann immer, wenn ich das dort benutzen will. Oder ich verstehe die Funktion falsch!?)
2. Im Paginationstemplate kann ich meinen Anker an den Link von Vorwärts, Zurück, Anfang und Ende anhängen... an die Items 1,2,3,4,5 usw. komme ich leider nicht. Wie mache ich das in dem Fall?
Hat jemadn eine Idee dazu oder gar eine alternative Idee, wie ich das lösen konnte?
Vielen Dank.
Gruß
Thomas
Hat jemand dafür inzwischen eine Lösung gefunden?
Hallo Thomas,
dein Problem ist genau mein Problem. Hast du es inzwischen irgendwie lösen können?
Vielleicht kann man im Template mit insert_tags für den Anker arbeiten? wo hast du die Anker hingesetzt. Als eigenes Element über der Galerie?
Grüße, Conny
Seitenanker für Gallery Creator
Hallo fluppi,
danke für die Lösung, das funktioniert schonmal bei den Ziffern.
Hat noch jemand eine Lösung für den Text? Irgendwie habe ich da einen Knoten im Kopf. Den Gallery Creator habe ich dahingehend angepasst das der Albumname der Ankerpunkt ist.
PHP-Code:
<?php if ($this->Albumname): ?>
<a name="liststart"><h2><?php echo $this->Albumname; ?></h2></a>
<?php endif; ?>
Das funktioniert wie schon gesagt nur bei den Zahlen. Was muss ich machen damit auch der Text "Anfang Zurück Vorwärts Ende" auf den Anker zugreift. Das ist sonst ja nur die halbe Lösung und sieht nicht gut aus.
LG
Wolf_v2
Ankerpunkt mit pagination funktioniert
Der Knoten hat sich gelöst. Eigentlich ganz einfach.
so sieht meine pagination-Datei jetzt aus. Einfach nur den Anker #liststart hinter die a href setzen.
PHP-Code:
<!-- indexer::stop -->
<div class="pagination block">
<!-- <p><?php echo $this->total; ?></p> -->
<ul>
<?php if ($this->hasFirst): ?>
<li class="first"><a href="<?php echo $this->first['href']; ?>#liststart" class="first" title="<?php echo $this->first['title']; ?>"><?php echo $this->first['link']; ?></a></li>
<?php endif; ?>
<?php if ($this->hasPrevious): ?>
<li class="previous"><a href="<?php echo $this->previous['href']; ?>#liststart" class="previous" title="<?php echo $this->previous['title']; ?>"><?php echo $this->previous['link']; ?></a></li>
<?php endif; ?>
<?php echo str_replace('" class="link"','#liststart" class="link"',$this->items); ?>
<?php if ($this->hasNext): ?>
<li class="next"><a href="<?php echo $this->next['href']; ?>#liststart" class="next" title="<?php echo $this->next['title']; ?>"><?php echo $this->next['link']; ?></a></li>
<?php endif; ?>
<?php if ($this->hasLast): ?>
<li class="last"><a href="<?php echo $this->last['href']; ?>#liststart" class="last" title="<?php echo $this->last['title']; ?>"><?php echo $this->last['link']; ?></a></li>
<?php endif; ?>
</ul>
</div>
<!-- indexer::continue -->
LG
Wolf_v2