Slice Pagination

Wie verwendet man Module oder Aktion und passt diese an.

Slice Pagination

Beitragvon mauer-design » 22. Aug 2011, 08:55

Hallo,

hat einer eine Idee oder ein fertiges Modul, um eine Art Pagination innerhalb eines Artikels, also der einzelnen Slices, einzubinden.

Ich muss innerhalb eies Artikels über einen vor/zurück button einzelne Slices durchklicken können.
mauer-design
 
Beiträge: 118
Registriert: 24. Okt 2007, 12:10

Re: Slice Pagination

Beitragvon Hirbod » 22. Aug 2011, 11:06

Hi,

kleiner Ansatz:

mit OOArticleSlice holst du dir als erstes das Object und gehst alles durch, damit du weisst, wie viele Slices du hast. Mit getNextSlice() und getPreviousSlice() kannst du dir dann eine Pagination aufbauen. Falls du die genauen Methoden brauchst:

http://blumbeet.com/files/cheatsheet_redaxo_42.pdf

Nettes CheetSheet :)

LG
Hirbod
Hirbod
 
Beiträge: 369
Registriert: 15. Jan 2008, 13:46

Re: Slice Pagination

Beitragvon frood » 24. Aug 2011, 19:32

Moin!

Ich hatte sowas mal für zwei Seiten gebaut, allerdings musste man im 1. Slice markieren, das ein zweiter folgt und im zweiten, dass es einen ersten gibt (nicht sehr elegant, aber mit getNextSlice bekam ich Probleme mit dem Version-Addon, auf die ich keinen Bock hatte ;) ):

Code: Alles auswählen
<?php

// Zweite Seite vorhanden und soll dieser Slice angezeigt werden ?
if('REX_VALUE[14]'=='on'){ $s1 = true; } else { $s1 = false; }
if('REX_VALUE[15]'=='on'){ $s2 = true; } else { $s2 = false; }

// im Backend oder wenn nur eine Seite oder erste Seite aktiv oder zweite Seite aktiv
if( $REX['REDAXO'] || (!$s1 && !$s2) || ($s2 && $_GET['s']!='2') || ($s1 && $_GET['s']=='2') ){

   //Kategorie?
   $kat=$_GET['kat'];
   // woher
   $from=$_GET['from'];
   
   // Ausgabe
   blablabla
   // Blaettern
   // vorblaettern anzeigen, wenn erste Seite
   if($s2=='on'){
      if($_GET['rex_version']==1){ //Arbeitsversion
         echo '<div id="blaettern_vor"><div class="pfeil_rechts"><a href="'.rex_getUrl(REX_ARTICLE_ID, REX_CUR_CLANG, array("kat" => "$kat", "s" => 2, "from" => "$from", "rex_version" => 1 )).'">Seite 2</a></div></div>';
      }else{
         echo '<div id="blaettern_vor"><div class="pfeil_rechts"><a href="'.rex_getUrl(REX_ARTICLE_ID, REX_CUR_CLANG, array("kat" => "$kat", "s" => 2, "from" => "$from" )).'">Seite 2</a></div></div>';
      }
   }
   // zurueckblaettern anzeigen, wenn zweite Seite
   if($s1=='on'){
      if($_GET['rex_version']==1){ //Arbeitsversion
         echo '<div id="blaettern_zurueck"><div class="pfeil_links"><a href="'.rex_getUrl(REX_ARTICLE_ID, REX_CUR_CLANG, array("kat" => "$kat", "from" => "$from", "rex_version" => 1 )).'">Seite 1</a></div></div>';      
      }else{
         echo '<div id="blaettern_zurueck"><div class="pfeil_links"><a href="'.rex_getUrl(REX_ARTICLE_ID, REX_CUR_CLANG, array("kat" => "$kat", "from" => "$from" )).'">Seite 1</a></div></div>';         
      }
   }
}

?>


Wie gesagt: nicht sehr elegant, aber funktioniert ohne Nerverei auch mit dem Version-Addon. Und läßt sich ja auch leicht auf noch mehr slices erweitern.
Falls Du eine brauchbare Lösung mittels nextSlice (inkl. version-Addon) hinbekommst, gerne posten!

Gruss, Marc
frood
 
Beiträge: 88
Registriert: 7. Okt 2008, 14:17


Zurück zu Module/Aktionen [R4]

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron