Ergebnis 1 bis 7 von 7

Thema: metamodel_prerendered.html5

  1. #1
    Gesperrt
    Registriert seit
    20.07.2009.
    Ort
    Recife, Pernambuco, Brasilien
    Beiträge
    90

    Standard metamodel_prerendered.html5

    Hallo,

    ich würde gerne in der FE Listenansicht zum Beispiel den Namen eines Restaurants und dessen Bewertung in einer Zeile ausgeben. Irgendwie bekomme ich das aber nicht auf die Reihe. Der Name des Restaurants und die Bewertung des Restaurants wird auf zwei Zeilen ausgegeben. Die Bewertung steht also anstatt rechts vom Namen, unter diesem. Der Name des Restaurants soll linksbündig und die Bewertungssterne rechtsbündig ausgegeben werden.

    Mein Template sieht folgendermaßen aus:
    PHP-Code:
    <?php $strRendersettings = ($this->settings)? 'settings' 'view'?>
    <?php 
    if (count($this->data)): ?>
    <div class="layout_full">
    <?php foreach ($this->data as $arrItem): ?>
    <div class="item <?php echo $arrItem['class']; ?>">
    <?php foreach ($arrItem['attributes'] as $field => $strName): ?>
    <?php 
    if (($strValue $arrItem[$this->getFormat()][$field]) || ($strValue $arrItem['text'][$field])): ?>
    <div class="field <?php echo $field?>">
        <?php if(!$this->$strRendersettings->get('hideLabels')): ?>
            <div class="label"><?php echo sprintf($GLOBALS['TL_LANG']['MSC']['field_label'], $strName); ?></div>
        <?php endif; ?>
    <div class="value">
    <?php if ($arrItem['jumpTo']['deep']): ?>
    <a href="<?php echo $arrItem['jumpTo']['url']; ?>"><?php echo $strValue?></a>
    <?php else: ?>    
        <?php echo $strValue?>
    <?php 
    endif; ?>    
    </div>
    </div>
    <?php endif; ?>
    <?php 
    endforeach; ?>
    </div>
    <?php endforeach; ?>
    </div>
    <?php else: ?>
    <p class="info"><?php echo $this->noItemsMsg?></p>
    <?php endif; ?>
    Ich habe es schon mit einer Tabelle versucht, aber immer das selbe Ergebnis.

    So sieht das derzeit aus
    flasch.jpg
    und so sollte es aussehen
    richtig.jpg

    Carlos

  2. #2
    Contao-Urgestein Avatar von KlausGrenoble
    Registriert seit
    27.01.2013.
    Ort
    Grenoble
    Beiträge
    2.362

    Standard

    Ich kenn' mich mit CSS auch nicht so gut aus, aber ich hab' das mal so gelöst:
    <div>
    Name
    </div>
    <div>
    Rating 'ist in der zweiten Zeile
    </div>

    <div>
    Name
    <span>
    Rating 'ist in der gleichen Zeile
    </span>
    </div>

  3. #3
    Gesperrt
    Registriert seit
    20.07.2009.
    Ort
    Recife, Pernambuco, Brasilien
    Beiträge
    90

    Standard

    Danke für deine Hilfe Klaus.

    Ich habe nach vielem Kopfzerbrechen nun eine Lösung gefunden. Ich hoffe, die Profis hier bekommen bei meinem Code keine Kopfschmerzen ... aber es funktioniert. Wobei es mit Sicherheit elegantere Lösungen gibt. Falls jemand vor dem selben Problem steht, hier der Code:

    PHP-Code:
    <table border="0">
    <?php $strRendersettings = ($this->settings)? 'settings' 'view'?>
    <?php 
    if (count($this->data)): ?>
    <?php 
    foreach ($this->data as $arrItem): ?>
    </tr>
    <?php foreach ($arrItem['attributes'] as $field => $strName): ?>
    <?php 
    if (($strValue $arrItem[$this->getFormat()][$field] .'&nbsp;&nbsp;&nbsp;') || ($strValue $arrItem['text'][$field])): ?>
    <?php 
    if ($arrItem['jumpTo']['deep']): ?>
    <td><a href="<?php echo $arrItem['jumpTo']['url']; ?>"><?php echo $strValue?></a><td>
    <?php endif; ?>    
    <?php endif; ?>
    <?php 
    endforeach; ?>
    </tr>
    <?php endforeach; ?>
    <?php 
    endif; ?>
    </table>
    Gruß Carlos

  4. #4
    Contao-Urgestein Avatar von folkfreund
    Registriert seit
    09.04.2010.
    Beiträge
    1.928

    Standard

    Hallo Carlos,

    wie Klaus schon vermutete, sollte das eigentlich nur mit CSS lösbar sein.
    Gibt es einen Link zu deiner Seite, dann schau ich mir das mal an.

    Gruß, folkfreund

  5. #5
    Contao-Fan Avatar von comanche
    Registriert seit
    12.11.2009.
    Beiträge
    496

    Standard

    Hallo Carlos,

    Du kannst auch das Template ohne die For-Each-Schleife aufbauen und ganz gezielt die gewünschten Felder und Labels in einer eigenen HTML-Struktur ausgeben. Dabei spielt dann auch die Reihenfolge in den Rendereinstellungen keine Rolle. Das ist prima im Wiki erklärt:

    http://de.contaowiki.org/MetaModels_...usgabevorgaben

    Grüße,
    Andreas

  6. #6
    Gesperrt
    Registriert seit
    20.07.2009.
    Ort
    Recife, Pernambuco, Brasilien
    Beiträge
    90

    Standard

    Zitat Zitat von folkfreund Beitrag anzeigen
    Hallo Carlos,

    wie Klaus schon vermutete, sollte das eigentlich nur mit CSS lösbar sein.
    Gibt es einen Link zu deiner Seite, dann schau ich mir das mal an.

    Gruß, folkfreund
    Hallo folkfreund,
    leider nicht, da ich mich in die MetaModels auf meiner lokalen Installation versuche einzuarbeiten.

    Trotzdem vielen Dank für dein Angebot,
    Gruß Carlos

  7. #7
    Gesperrt
    Registriert seit
    20.07.2009.
    Ort
    Recife, Pernambuco, Brasilien
    Beiträge
    90

    Standard

    Zitat Zitat von comanche Beitrag anzeigen
    Hallo Carlos,

    Du kannst auch das Template ohne die For-Each-Schleife aufbauen und ganz gezielt die gewünschten Felder und Labels in einer eigenen HTML-Struktur ausgeben. Dabei spielt dann auch die Reihenfolge in den Rendereinstellungen keine Rolle. Das ist prima im Wiki erklärt:

    http://de.contaowiki.org/MetaModels_...usgabevorgaben

    Grüße,
    Andreas
    Hallo Andreas,
    danke für deinen Tip.

    Gruß Carlos

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
  •