Contao-Camp 2024
Ergebnis 1 bis 4 von 4

Thema: Inhaltselemente eines News Artikels im Template ausgeben?

  1. #1
    Contao-Fan Avatar von dirksche
    Registriert seit
    05.08.2009.
    Ort
    Grosslittgen
    Beiträge
    641

    Standard Inhaltselemente eines News Artikels im Template ausgeben?

    Hallo liebe Community,

    derzeit suche ich nach einer Möglichkeit, Inhaltselemente eines News Artikels gezielt im Template auszugeben.
    Im Forum habe ich schon einen guten Ansatz gefunden:

    Code:
    $idOfFirstContentElementOfThisArticle = \ContentModel::findOneByPid($this->id)->id;
    echo \Controller::getContentElement($idOfFirstContentElementOfThisArticle); ?>
    Damit lässt sich nur das erste Inhaltselement eine News Artikels ausgeben.
    Wie kann ich nun weitere Elemente ansteuern? Wenn ich z.B. statt dem ersten Element nur das zweite Inhaltselement ausgeben möchte?

    Grüße,
    Dirk

  2. #2
    Contao-Urgestein Avatar von Samson1964
    Registriert seit
    05.11.2012.
    Ort
    Berlin
    Beiträge
    2.792

    Standard

    Du willst wahrscheinlich das Element gleich geparst geliefert bekommen?! Falls nicht, habe ich vor Jahren einen anderen Ansatz gewählt:
    PHP-Code:
    <div>
    <?php 
        
    //$this->showTemplateVars(); 
        // 1. Content-Element der Nachricht vom Typ fen?
        
    $objDB = \Database::getInstance();
        
    $objContent $objDB->prepare('SELECT * FROM tl_content WHERE pid=? AND ptable="tl_news" ORDER BY sorting ASC')->limit(1)->execute($this->id); 
        if(
    $objContent && $objContent->type == 'fen'
        {
            
    $headline deserialize($objContent->headline);
            
    $fen true;
        }
    ?>

        <?php if($fen): ?>
            <div class="ce_fen <?php echo $this->class?> block"<?php echo $this->cssID?> style="<?php if ($this->margin): ?><?php echo trim($this->margin); ?><?php endif; ?> <?php if ($this->style): ?><?php echo $this->style?><?php endif; ?>"> 
                <figure class="image_container float_above" style="width:240px;">
                    <img width="240" title="Diagramm" alt="Diagramm" src="system/modules/fen/public/fen.php?fen=<?php echo $objContent->fen_code?>&piece_style=merida&square_size=25&coordinates=on&direction=&border_width=0&border_color=&ls_color=(238,207,163)&ds_color=(138,138,138)">
                    <figcaption class="caption" style="width:240px"><?php echo $objContent->fen_untertitel?></figcaption>
                </figure>
                <p><b><?php echo $headline['value']; ?></b><br><a href="<?php echo $this->link?>">Lösung</a> </p>
                
            </div>
        <?php endif; ?> 
        
    </div>
    Ich lade das 1. Inhaltselement meiner Nachricht und wenn es vom Typ fen (ein eigenes Inhaltselement) ist, hole ich mir die restlichen Daten zu dem Element aus dem Datensatz und gebe das Element aus.
    Viele Grüße
    Frank

    Seit Mai 2013 Fan von Contao
    Webmaster vom Deutschen Schachbund und Berliner Schachverband
    Mein Blog: Schachbulle
    Meine Erweiterungen bei GitHub
    Meine Videos auf YouTube: Playlist zur Contao-Programmierung/Einrichtung

  3. #3
    Contao-Fan Avatar von JMMB
    Registriert seit
    08.03.2012.
    Beiträge
    260
    User beschenken
    Wunschliste

    Standard

    hallo,

    ich hole mir die Detail-Elemente in einer Newsliste so:

    PHP-Code:
       <?php $objContentModel = \ContentModel::findPublishedByPidAndTable($this->id'tl_news'); ?>
    Es sollte auch mit der Id statt der PID gehen wenn du Im Leser Modul bist.

  4. #4
    Contao-Nutzer
    Registriert seit
    24.08.2018.
    Ort
    Magdeburg
    Beiträge
    131

    Standard

    Zitat Zitat von dirksche Beitrag anzeigen
    Hallo liebe Community,

    derzeit suche ich nach einer Möglichkeit, Inhaltselemente eines News Artikels gezielt im Template auszugeben.[...]
    Was genau hast du denn vor? Vlt. ist es einfacher so eine passende Lösung anzubieten.

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

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