Hallo und ich steh auf dem Schlauch!
Ich habe Newsobjekte auf einer Übersichtsseite. Per Klick auf dem "mehr dazu"-Button komm ich auf die Objekt-Detailseite. Hier möchte ich am Ende des Artikels links den vorigen Artikel und rechts den nächsten Artikel "bewerben".
Muss ich da die Objekt-ID ermitteln und per PHP rechnen?
Vielleicht hat das ja schon wer gemacht? Ich wäre um Hilfe sehr dankbar!
vorheriger Artikel, nächster Artikel
- christobal
- Senior Member
- Beiträge: 313
- Registriert: Do 4. Nov 2010, 13:03
- Wohnort: Reith bei Seefeld, Tirol - Österreich
- Kontaktdaten:
vorheriger Artikel, nächster Artikel
BIG Detail, Kaspar & Sigl OG
Riedgasse 8b
A-6020 Innsbruck
Tel. +43 512 346070-40
Fax +43 512 346070-20
Mobil: +43 676 3438011
christoph.kaspar@bigdetail.com
http://www.bigdetail.com
Riedgasse 8b
A-6020 Innsbruck
Tel. +43 512 346070-40
Fax +43 512 346070-20
Mobil: +43 676 3438011
christoph.kaspar@bigdetail.com
http://www.bigdetail.com
Re: vorheriger Artikel, nächster Artikel
Hi Christobal,
mit Bordmitteln geht das aktuell nicht, aber das Thema "Optimierung der Paginierung" haben wir auf dem Schirm.
Du könntest Dir (wenn Du immer über eine LIste kommst) dort in der Session die Reihenfolge merken) oder auf jeder Seite nochmals eine Listview machen und mit offset und rows dann den jeweiligen Eintrag selektieren.
Viele Grüße
Timo
mit Bordmitteln geht das aktuell nicht, aber das Thema "Optimierung der Paginierung" haben wir auf dem Schirm.
Du könntest Dir (wenn Du immer über eine LIste kommst) dort in der Session die Reihenfolge merken) oder auf jeder Seite nochmals eine Listview machen und mit offset und rows dann den jeweiligen Eintrag selektieren.
Viele Grüße
Timo
webEdition Partner - https://www.blickfang-media.com
Ehemals im Vorstand des webEdition e.V.
Ehemals im Vorstand des webEdition e.V.
-
- webEdition Partner
- Beiträge: 1825
- Registriert: Di 7. Mär 2006, 16:50
- Wohnort: Wien
- Kontaktdaten:
Re: vorheriger Artikel, nächster Artikel
Hallo,
Als Workaround kannst du die Detailseite mittels Listview umsetzen. Diese zeigt dann nur den ausgewählten Eintrag an. Mittels back/next kannst du dann zwischen den Einträgen navigieren.
HTH,
Sascha
Als Workaround kannst du die Detailseite mittels Listview umsetzen. Diese zeigt dann nur den ausgewählten Eintrag an. Mittels back/next kannst du dann zwischen den Einträgen navigieren.
HTH,
Sascha
Re: vorheriger Artikel, nächster Artikel
... ich hatte das mal so gelöst:
Code: Alles auswählen
<we:comment>Textlink zum chronologisch vorhergehenden bzw. nachfolgenden Beitrag. Angezeigt wird die jeweilige Seitenueberschrift.</we:comment>
<?php
$GLOBALS['paginationArrayPosition'] = array();
$GLOBALS['paginationArrayTitle'] = array();
?>
<we:DID doc="self" to="global" nameto="actDocID" />
<we:listview type="document" name="Pagination" doctype="Blog-Beitrag" order="Datum" desc="false">
<we:repeat>
<we:field type="text" name="WE_ID" to="global" nameto="listviewDcoID"/>
<we:field type="text" name="SeitenUeberschrift" to="global" nameto="listviewDocHeadline"/>
<we:position type="listview" reference="Pagination" format="1" to="global" nameto="listviewActPosition" />
<?php
$id = $GLOBALS['listviewDcoID'];
$GLOBALS['paginationArrayPosition'][$GLOBALS['listviewActPosition']] = $id;
$GLOBALS['paginationArrayTitle'][$id] = $GLOBALS['listviewDocHeadline'];
?>
</we:repeat>
</we:listview>
<?php
$backPageID = 0;
$GLOBALS['backPageTitle'] = '';
$nextPageID = 0;
$GLOBALS['nextPageTitle'] = '';
foreach($GLOBALS['paginationArrayPosition'] as $position => $id){
if($id == $GLOBALS['actDocID']){
$backPosition = ($position-1);
$backPageID = $GLOBALS['paginationArrayPosition'][$backPosition];
if($backPageID > 0){
$GLOBALS['backPageTitle'] = $GLOBALS['paginationArrayTitle'][$backPageID];
}
$nextPosition = ($position+1);
$nextPageID = $GLOBALS['paginationArrayPosition'][$nextPosition];
if($nextPageID > 0){
$GLOBALS['nextPageTitle'] = $GLOBALS['paginationArrayTitle'][$nextPageID];
}
}
}
?>
<div class="pagenavi">
<we:ifVarNotEmpty match="backPageTitle" type="global"><we:a id="\$backPageID" class="back"><we:var type="global" name="backPageTitle"/></we:a></we:ifVarNotEmpty>
<we:ifVarNotEmpty match="nextPageTitle" type="global"><we:a id="\$nextPageID" class="forth"><we:var type="global" name="nextPageTitle"/></we:a></we:ifVarNotEmpty>
</div>
- christobal
- Senior Member
- Beiträge: 313
- Registriert: Do 4. Nov 2010, 13:03
- Wohnort: Reith bei Seefeld, Tirol - Österreich
- Kontaktdaten:
Re: vorheriger Artikel, nächster Artikel
Vielen Dank für Euren Input!!!
BIG Detail, Kaspar & Sigl OG
Riedgasse 8b
A-6020 Innsbruck
Tel. +43 512 346070-40
Fax +43 512 346070-20
Mobil: +43 676 3438011
christoph.kaspar@bigdetail.com
http://www.bigdetail.com
Riedgasse 8b
A-6020 Innsbruck
Tel. +43 512 346070-40
Fax +43 512 346070-20
Mobil: +43 676 3438011
christoph.kaspar@bigdetail.com
http://www.bigdetail.com
- christobal
- Senior Member
- Beiträge: 313
- Registriert: Do 4. Nov 2010, 13:03
- Wohnort: Reith bei Seefeld, Tirol - Österreich
- Kontaktdaten:
Re: vorheriger Artikel, nächster Artikel
Sodala, hab jetzt das PHP-Skript woanders gefunden und für meine Objekte umgebaut. Vielleicht kanns ja wer anderer auch gebrauchen...
Code: Alles auswählen
<we:object name="newsdetail" classid="2">
<h1><we:var name="Newsheadline" /></h1>
<h2><we:var name="Newsvorspann" /></h2>
<we:var name="Newstext" />
</we:object>
<?php $newsPaths = array(); ?>
<we:listview type="object" name="news_listview" rows="4" order="Newsdatum" classid="2" desc="true">
<we:repeat>
<we:field name="WE_PATH" to="global" nameto="thisNewsPath"/>
<?php array_push($newsPaths, $thisNewsPath); ?>
</we:repeat>
</we:listview>
<?php
$self = $_SERVER['REQUEST_URI'];
$newsIndex = "";
for($i=0; $i < count($newsPaths); $i++) {
if($newsPaths[$i] == $self) {
$newsIndex = $i;
}
}
?>
<?php if($newsPaths[$newsIndex - 1]) { echo 'href="'.$newsPaths[$newsIndex - 1].'">voriger Eintrag</a>'; } ?>
<a href="<we:url id="14"/>">Übersicht</a>
<?php if($newsPaths[$newsIndex + 1]) { echo '<a href="'.$newsPaths[$newsIndex + 1].'">nächster Eintrag</a>'; } ?>
BIG Detail, Kaspar & Sigl OG
Riedgasse 8b
A-6020 Innsbruck
Tel. +43 512 346070-40
Fax +43 512 346070-20
Mobil: +43 676 3438011
christoph.kaspar@bigdetail.com
http://www.bigdetail.com
Riedgasse 8b
A-6020 Innsbruck
Tel. +43 512 346070-40
Fax +43 512 346070-20
Mobil: +43 676 3438011
christoph.kaspar@bigdetail.com
http://www.bigdetail.com
Wer ist online?
Mitglieder in diesem Forum: 0 Mitglieder und 57 Gäste