Ich versuche seit mehreren Stunden erfolglos, die Einbindung eines bzw. mehrerer Audios zu realisieren ...
So sieht die php-Datei auszugsweise aus:
Das funktioniert im Backend auch soweit alles, nur im Frontend wird nichts ausgeliefert, weil das dazugehörige Template irgendwie nicht stimmt:PHP-Code:
'audiodateien' => array(
'label' => array('Audio','Füge eine beliebige Anzahl an Audios ein.'),
'elementLabel' => 'Audio %s',
'inputType' => 'list',
'fields' => array(
'audiodatei' => array(
'label' => array('Ueberschrift (bei mehreren Audios)', ''),
'inputType' => 'text',
'eval' => array('tl_class' => 'w50'),
),
'audio' => array(
'label' => array('Audiodatei', ''),
'inputType' => 'fileTree',
'eval' => array(
'fieldType' => 'radio',
'filesOnly' => true,
'extensions' => 'mp3',
'tl_class' => 'w50',
),
),
),
),
leider reichen meine dürftigen php-kenntnisse nicht aus, um den Fehler zu finden ...HTML-Code:<?php foreach ($this->audiodateien as $audiodatei): ?>
<div class="ce_player block">
<h3><?php echo $this->audiodatei ?></h3>
<figure class="audio_container">
<audio preload="auto" controls="">
<source type="<?= $audio->mime ?>" src="<?= $audio->path ?>" title="<?= $audio->title ?>">
</audio>
</figure>
</div>
<?php endforeach ?>
Und gleich noch eine Frage hinterher:
Innerhalb des gleichen Custom Elements kann, aber muss nicht im Backend ein Feld 'inputType' => 'text' ausgefüllt werden. Wenn es nicht ausgefüllt wird, meckert Contao beim Speichern "Bitte füllen Sie das Feld "Text" aus!". Wie kann ich es verhindern, dass das Textfeld automatisch zum Pflichtfeld wird?
Viele Grüße
Thekla