Zitat von
zonky
Du hast den Aufbau des Templates nicht verstanden...
Da bin ich mir sogar ziemlich sicher!
Ich möchte mir ein Template bauen, dass immer in etwa diese Vorgaben haben soll:
Code:
<div itemscope itemtype="http://schema.org/Recipe">
<h1 itemprop="name">Hier soll das Attribut Name rein</h1>
<div class="ce_bs_gridStart Row"> // Hier startet das Grid von Bootstap
// linke Seite ist nur ein Rezeptbild (Attribut Foto, Responsive Bilder aus Contao)
<div class="col-md-5">
<div class="ce_image block">
<figure class="image_container">
/* Hier soll das Attribut Foto rein, itemprop="Image"
</div>
</div>
// Der Bootstrap Separator
<div class="ce_bs_gridSeparator col-md-6 offset-md-1">
// Hier kommen nun die Angaben zum Rezept
<div class="ce_text group block">
/* Hier soll das Attribut Gruppe rein
</div>
// Hier sind einige Piktogramme vorgesehen. Diese sollen nebeneinander floaten (in MM Mehrfachauswahl)
<div class="ce_image picto float-left block">
/* Hier soll das Attribut picto rein
</div>
<div class="ce_image picto float-left block">
/* Hier soll das Attribut picto rein
</div>
<div class="ce_image picto float-left block">
/* Hier soll das Attribut picto rein
</div>
<div class="ce_text block" itemprop="recipeIngredient">
/* Hier soll das Attribut Zutaten rein
</div>
<div class="ce_text block" itemprop="recipeInstructions">
/* Hier soll das Attribut Zubereitung rein
</div>
// Hier kommt ein Bootstrap Accordion hin
<section class="ce_accordionSingle ce_accordion ce_text block">
<div class="toggler ui-accordion-header ui-corner-top ui-accordion-header-collapsed ui-corner-all ui-state-default ui-accordion-icons" role="tab" id="ui-id-1" aria-controls="ui-id-2" aria-selected="false" aria-expanded="false" tabindex="0"><span class="ui-accordion-header-icon ui-icon ui-icon-triangle-1-e"></span>
<i class="icon-arrow-down"></i> Geschichte <span style="font-size:70%">(zum Öffnen klicken)</span></h4>
</div>
<div class="accordion ui-accordion-content ui-corner-bottom ui-helper-reset ui-widget-content" style="display: none;" id="ui-id-2" aria-labelledby="ui-id-1" role="tabpanel" aria-hidden="true"><div>
<p> /* Hier soll das Attribut Geschichte rein</p>
</div>
</div>
</section>
</div>
Muss ich nun Deinen PHP-Code an jeder Stelle, an der ich ein Attribut haben möchte, komplett einfügen? Also etwa so:
HTML-Code:
<h1>Rezeptname</h1>
Hier kommt statt »Rezeptname« das rein:
PHP-Code:
<?php
// Debug items.
if (\Contao\System::getContainer()->get('kernel')->isDebug()) {
dump($this->data);
}
?>
<?php if (count($this->data)): ?>
<div class="">
<?php foreach ($this->data as $arrItem): ?>
<?= $arrItem['text']['Name'] ?>
<?php endforeach; ?>
</div>
<?php else : ?>
<?php $this->block('noItem'); ?>
<p class="info"><?= $this->noItemsMsg ?></p>
<?php $this->endblock(); ?>
<?php endif; ?>
oder aber
HTML-Code:
<div class="ce_text group block">
Zutaten
</div>
Da kommt dann statt »Zutaten« rein:
PHP-Code:
<?php
// Debug items.
if (\Contao\System::getContainer()->get('kernel')->isDebug()) {
dump($this->data);
}
?>
<?php if (count($this->data)): ?>
<div class="">
<?php foreach ($this->data as $arrItem): ?>
<?= $arrItem['text']['Zutaten'] ?>
<?php endforeach; ?>
</div>
<?php else : ?>
<?php $this->block('noItem'); ?>
<p class="info"><?= $this->noItemsMsg ?></p>
<?php $this->endblock(); ?>
<?php endif; ?>
Außerdem funktioniert bei mir das Ansprechen der Bilder nicht. Hier wird immer nur der Linktext ausgegben.
Wie mache ich das richtig?
Lesezeichen