Ergebnis 1 bis 6 von 6

Thema: Seitenelemente nacheinander anzeigen

  1. #1
    Erfahrener Benutzer Avatar von zf-neuling
    Registriert seit
    01.10.2007
    Beiträge
    182
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Frage Seitenelemente nacheinander anzeigen

    Hallo,

    meine CMS Seite baut sich aus mehreren Contentblöcken zusammen, ähnlich "contao".

    Block 1: Überschrift
    Block 2: Plugin "Slider"
    Block 3: Text

    Nun stehe ich vor dem Problem das Plugin an der richtigen Stelle anzuzeigen. Zur Zeit wird es einfach ganz unten auf der Seite angezeigt und nicht nach "Block 1".

    Plugin:
    Code:
    class Default_Plugin_Slider extends Zend_Controller_Plugin_Abstract {
            
            private $tpl = 'slider.phtml';
            
            public function postDispatch(Zend_Controller_Request_Abstract $request) {
                
                $view = Zend_Registry::get('view');
                $view->setScriptPath(APPLICATION_PATH . '/modules/default/plugins/views');
                
                 $this->getResponse()->appendBody($view->render($this->tpl)); 
    
            }
        }
    Controller:
    Code:
    class IndexController extends My_Controller_FrontAction {
    
        public function showAction() {
     
            // hole alle contents der seite x
            $contents = $this->modelContent->getContents($page_id);
    
                if (count ($contents) > 0) {
                    foreach ($contents as $item) {
    
                        if ($item['plugin']) {
                            $this->loadPlugin($item['plugin']);
                        }
    
                        $this->getResponse()->appendBody(
                            stripslashes($item['text'])
                        );
                    }
                }
        }
    }
    Wie kann ich die Pluginausgabe steuern und Inhalt des Plugin-Templates an der richtigen Stelle anzeigen lassen?

    Gruß
    Nico
    ZF ist geil, wenn man's versteht...
    bin grad dabei

  2. Aktuelles Zend Framework Stellenangebot


    Webprogrammierer(in)
    von ZAPITANO GmbH

    Details ansehen
  3. #2
    Erfahrener Benutzer Avatar von SeKrebs
    Registriert seit
    04.02.2011
    Beiträge
    1.599
    Thanks
    1
    Thanked 41 Times in 40 Posts

    Standard

    Stichwort "Zend_Layout". Eigentlich alles notwendige dazu findet sich im Manual.
    "KingCrunchs kleine Welt" -- Blog
    The problem with rats leaving a sinking ship is that they usually do it by gnawing holes in the bottom.

  4. #3
    Erfahrener Benutzer Avatar von zf-neuling
    Registriert seit
    01.10.2007
    Beiträge
    182
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Standard

    Hallo,

    ich möchte das Ganze in View anzeigen, nicht im Layout mehrere Platzhalter verwenden.

    Im Layout habe ich
    Code:
    $this->layout()->content
    stehen.

    Ich möchte alle Ausgaben dorhin laden, statt mehrere Platzhalter zu nutzen.

    Gibt es hier wirklich keine Lösung?
    ZF ist geil, wenn man's versteht...
    bin grad dabei

  5. #4
    Erfahrener Benutzer Avatar von SeKrebs
    Registriert seit
    04.02.2011
    Beiträge
    1.599
    Thanks
    1
    Thanked 41 Times in 40 Posts

    Standard

    Im Layout habe ich
    [..]
    stehen.

    Mehr nicht? Wenn das alles ist: Wozu dann Zend_Layout?

    Ich möchte alle Ausgaben dorhin laden, statt mehrere Platzhalter zu nutzen.
    Und warum? So ohne Begründung wirkt es einfach unnötig kompliziert, vor allem in Anbetracht der Tatsache, dass es per Zend_Layout recht einfach lösbar ist


    Randbemerkung: Auch daran denken, dass du jederzeit das zu verwendende Layout wechseln kannst.
    "KingCrunchs kleine Welt" -- Blog
    The problem with rats leaving a sinking ship is that they usually do it by gnawing holes in the bottom.

  6. #5
    Erfahrener Benutzer Avatar von zf-neuling
    Registriert seit
    01.10.2007
    Beiträge
    182
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Standard

    Ja ich kann natürlich für jede Aktion, Controller oder auch Modul ein eigenes Layout verwenden aber das Problem ist anders. Meine Inhalte werden als Blöcke gespeichert und ich möchte alle Blöcke nacheinander anzeigen in richtiger Reihenfolge, z.B.:

    Überschrift
    Slider
    Text

    und dies ist auf jeder Seite natürlich unterschiedlich.

    Wenn ich sowas stehen habe:

    Code:
    $this->layout()->slider;
    $this->layout()->content;
    dann muss ich zu jeder CMS Seie ein Layout haben, soll ja flexibel bleiben.
    ZF ist geil, wenn man's versteht...
    bin grad dabei

  7. #6
    Erfahrener Benutzer Avatar von SeKrebs
    Registriert seit
    04.02.2011
    Beiträge
    1.599
    Thanks
    1
    Thanked 41 Times in 40 Posts

    Standard

    dann muss ich zu jeder CMS Seie ein Layout haben, soll ja flexibel bleiben.
    Und du meins nicht, dass du gerade zielgerichtet in die Überflexibilitäts-Falle läufts?
    Ausserdem kannst du auch weitere View-Skripte via partial-helper oder direkt via render() schachteln
    PHP-Code:
    // mypartial.phtml
    echo $this->ueberschrift;
    echo 
    $this->slider;
    echo 
    $this->text
    Alternativ (weil du ja so ein Wert auf den Begriff "Block" legst ): Schmeiß eben alles sortiert in das Layout/ein View-Skript
    PHP-Code:
    foreach ($this->blocks as $block) {
      echo 
    $block;

    Ich würde mich dabei aber eher unwohl fühlen, weil ich nicht davon ausgehe, dass das lange übersichtlich/nachvollziehbar bleibt, wenn jeder mal irgendwas da rein wirft.
    "KingCrunchs kleine Welt" -- Blog
    The problem with rats leaving a sinking ship is that they usually do it by gnawing holes in the bottom.

Ähnliche Themen

  1. ZF Errors anzeigen
    Von ArtWorkAD im Forum Installation & Konfiguration
    Antworten: 9
    Letzter Beitrag: 28.07.2010, 13:30
  2. Mehrere Actions / Views nacheinander
    Von netzcowboy im Forum Einsteigerfragen
    Antworten: 2
    Letzter Beitrag: 10.05.2009, 17:31
  3. Workflow-Schritte nacheinander abarbeiten?
    Von buddy_casino im Forum MVC
    Antworten: 2
    Letzter Beitrag: 29.04.2008, 09:15
  4. Antworten: 31
    Letzter Beitrag: 22.04.2008, 21:30
  5. IP Adresse anzeigen
    Von dhenninger im Forum Einsteigerfragen
    Antworten: 4
    Letzter Beitrag: 25.06.2007, 17:47

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •