Contao-Camp 2024
Ergebnis 1 bis 4 von 4

Thema: Download-Element mit Metaangaben

  1. #1
    Contao-Fan Avatar von operatorone
    Registriert seit
    19.06.2009.
    Ort
    Kitzingen
    Beiträge
    547

    Frage Download-Element mit Metaangaben

    Hallo zusammen,

    in einem Element, was ich erstellt habe, möchte ich gerne einen Download einfügen und an diesem dann auch die vorhandenen Meta-Angaben ausgeben. Ich möchte zum Beispiel die Dateiart und die Größe anzeigen und gegebenenfalls auch auf den in der Dateiverwaltung platzierten Titel zurückgreifen. Hier der Code, den ich bis jetzt dazu geschrieben habe. Leider schaffe ich es nicht die Meta-Angaben mit einzufügen. Würde mich über eure Hilfe freuen.

    Viele Grüße
    operatorone

    Code:
    <?php
    return array(
    	'standardFields' => array( 'cssID', 'space' ),
        'contentCategory' => 'Spezial',
    	'label' => array( 'Diagramm-Schritt', 'Element zu Veranschaulichung eines Ablaufs durch Schritte.' ),
    	'fields' => array(
             'files' => array(
    			'label' => array( 'Download', 'Hier können Sie eine Datei für den Download auswählen.' ),
    			'inputType' => 'group',
    		),
    		'download' => array(
    			'label' => array('Download', 'Hier kann Datei zum Download angegeben werden.'),
    			'inputType' => 'fileTree',
    			'eval' => array(
    					'mandatory' => false,
    					'multiple' => false,
    					'fieldType' => 'radio',
    					'filesOnly' => true,
    					'extensions' => 'pdf,zip,doc,docx,xlsx,ppt,pptx',
    					'reference' => &$GLOBALS['TL_LANG']['MSC'],
    			),
    	 	),
    		'fileLinkTitle' => array(
    			'label' => array( 'Download-Titel', 'Der Link-Text für den Download angezeigt wird.' ),
    			'eval' => array( 'tl_class' => 'w50 '),
    			'inputType' => 'text',
    		),
    		'fileSize' => array(
    			'label' => array( 'Dateigröße', 'Hier können Sie die Größe des Downloads angeben.' ),
    			'eval' => array( 'tl_class' => 'w50 '),
    			'inputType' => 'text',
    		),
    	),
    );
    HTML-Code:
                <div class="download">
    		 <a download="<?php echo $this->fileLinkTitle ?>" href="de/?file={{file::<?= $this->download?>}}">
    			 <span class="fa fa-download"></span> <span class="link-label"><?php echo $this->fileLinkTitle ?></span> <span class="size">(<?php echo $this->fileSize ?>)</span>
    	       </a>
                </div>

  2. #2
    Alter Contao-Hase Avatar von bizon
    Registriert seit
    16.06.2010.
    Beiträge
    1.121

    Standard

    Lösung um mehrere Dateien zum Download anzubieten:
    Config:
    PHP-Code:
    'document' => array(
       
    'label' => array('Download''Hier können Dateien zum Download bereitgestellt werden.'),
       
    'inputType' => 'fileTree',
       
    'eval' => array(
           
    'mandatory' => false,
           
    'multiple' => true,
           
    'fieldType' => 'checkbox',
           
    'filesOnly' => true,
           
    'extensions' => 'pdf,zip,doc,docx,xlsx,ppt,pptx',
       ),
    ), 
    Ausgabe:
    HTML-Code:
    <?php if ($this->document): ?>
        <p class="downloads">Download</p>
        <?php foreach ($this->document as $uuid) {
            $objFile = \FilesModel::findByUuid($uuid); 
            $objFileSize = $this->getReadableSize(filesize($objFile->path));
            $meta = deserialize($objFile->meta, true); 
            $docTitle = $meta['de']['title']; ?>
            <a href="{{file::<?php echo $uuid ?>}}" class="pdfdownload" title="Download: <?= $docTitle ?>"><?= $docTitle . ' <span>(' . $objFile->name . " - " . $objFileSize .')</span>' ?></a><br> 
        <?php } ?>
    <?php endif ?>
    Beispiel:
    https://natterwohnbau.at/projekt/sonnenhof/

  3. #3
    Contao-Fan Avatar von operatorone
    Registriert seit
    19.06.2009.
    Ort
    Kitzingen
    Beiträge
    547

    Lachendes Gesicht

    Super, du bist mein Held! Vielen Dank. Kommt sofort in meine Snippet-Library.

  4. #4
    Contao-Fan Avatar von operatorone
    Registriert seit
    19.06.2009.
    Ort
    Kitzingen
    Beiträge
    547

    Standard

    Ein kleiner Hinweis. Auf https://natterwohnbau.at/projekt/sonnenhof/ erscheinen die Icons nicht korrekt. Ich habe die CSS-Regel mal so angepasst, dann geht es :-)

    Code:
    .projekt .pdfdownload::before {
    	content: '\f019';
    	color: #1D5A80;
    	font-size: 2rem;
    	line-height: 1;
    	font-family: "FontAwesome";
    }

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
  •