Contao-Camp 2024
Ergebnis 1 bis 27 von 27

Thema: Meta-Informationen bei Download-Dateien anzeigen lassen

  1. #1
    Contao-Nutzer
    Registriert seit
    26.10.2012.
    Beiträge
    52

    Standard Meta-Informationen bei Download-Dateien anzeigen lassen

    Hallo,
    eigentlich ist das (meines Erachtens) eine absolute Standard-Funktion/Wunsch und nix besonderes - aber ich bekomme es nicht hin.
    Ich möchte über das Tempate (ce_downloads bzw. eine Anpassung davon) eine Liste von PDF-Dateien anzeigen lassen, die sich in einem bestimmten Ordner befinden.
    Den Ordner kann ich vorgeben, die Dateien werden automatisch aufgeführt. Alles wunderbar.
    Aber die Meta-Informationen, die ich bei den Dateien in der Dateiverwaltung hinterlegt habe, kann ich nicht anzeigen lassen, bzw. werden standardmäßig nicht angezeigt, sondern nur der Dateiname an sich (mit Dateierweiterung usw.).
    Ich möchte aber Zusatzinfos für diese Dateien bereit stellen und das rel. einfach einpflegen - was läge da näher als die Meta-Informationen zu verwenden.

    Wie macht ihr das?
    Evtl. ginge es noch über ein News-Modul - aber das wäre dann evtl. etwas Kanonen auf Spatzen, meiner Ansicht nach.

  2. #2
    AG Pressearbeit
    Community-Moderator
    Buchautor 'Contao für Webdesigner'
    Avatar von planepix
    Registriert seit
    05.06.2009.
    Ort
    Stuttgart
    Beiträge
    6.464
    Partner-ID
    107
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hallo dawson,

    baue im Template einmal temporär die Ausgabe aller verfügbarer Variablen ein -> https://docs.contao.org/books/cookbo...variables.html.

    Wenn die Metadaten dabei sind, kannst du das Template erweitern und die Metadaten dann mit ausgeben lassen.
    ---------------------------------
    Beste Grüße planepix
    Contao für Webdesigner (Website), Twitter: @contaowebdesign
    weitzeldesign
    Contao-Sprechstunde
    Contao Schulungen: https://www.weitzeldesign.com/cms-co...chulungen.html
    Contao Jahrbuch: www.contao-jahrbuch.de
    Contao Agenturtag: www.contao-agenturtag.de
    Contao Stammtisch Stuttgart: www.contao-stammtisch-stuttgart.de
    Contao 4 Erfahrungen als Gitbook: https://app.gitbook.com/@planepix/s/...-mit-contao-4/
    Contao 4 & Manager Hosterhinweise: https://github.com/contao/contao-manager/wiki

    Schon wieder ein Update?
    Glücklich sind die, die den Wert erkennen – und wertschätzen.
    „Muss man machen wie beim Zahnarzt. Der bestraft einen auch mit hohen Rechnungen wenn man die Pflege vernachlässigt.”

  3. #3
    Contao-Nutzer
    Registriert seit
    26.10.2012.
    Beiträge
    52

    Standard

    Habe ich gemacht. Danke für die schnelle Antwort.
    Leider stehts nicht dabei.
    Wieso kann ich dann diese Meta-Daten eintragen, wenn sie (irgendwo in den Untiefen der Datenbank) gespeichert werden, aber nicht abrufbar sind?!?
    Komisch. Wie komme ich da ran?

  4. #4
    AG Pressearbeit
    Community-Moderator
    Buchautor 'Contao für Webdesigner'
    Avatar von planepix
    Registriert seit
    05.06.2009.
    Ort
    Stuttgart
    Beiträge
    6.464
    Partner-ID
    107
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Die Metadaten werden im CE Download, wohl aber nicht im CE Downloads verwendet.
    Mal in die ce_download gucken und das übernehmen.

    Vielleicht liest das noch jemand mit, der dazu eine praktikable Lösung hat…

    Alternativ als Feature Request auf GitHub stellen, dann wohl aber für die Version 4…
    ---------------------------------
    Beste Grüße planepix
    Contao für Webdesigner (Website), Twitter: @contaowebdesign
    weitzeldesign
    Contao-Sprechstunde
    Contao Schulungen: https://www.weitzeldesign.com/cms-co...chulungen.html
    Contao Jahrbuch: www.contao-jahrbuch.de
    Contao Agenturtag: www.contao-agenturtag.de
    Contao Stammtisch Stuttgart: www.contao-stammtisch-stuttgart.de
    Contao 4 Erfahrungen als Gitbook: https://app.gitbook.com/@planepix/s/...-mit-contao-4/
    Contao 4 & Manager Hosterhinweise: https://github.com/contao/contao-manager/wiki

    Schon wieder ein Update?
    Glücklich sind die, die den Wert erkennen – und wertschätzen.
    „Muss man machen wie beim Zahnarzt. Der bestraft einen auch mit hohen Rechnungen wenn man die Pflege vernachlässigt.”

  5. #5
    AG Pressearbeit
    Community-Moderator
    Buchautor 'Contao für Webdesigner'
    Avatar von planepix
    Registriert seit
    05.06.2009.
    Ort
    Stuttgart
    Beiträge
    6.464
    Partner-ID
    107
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Habe zum Thema folgenden Link gefunden - ggf ein Ansatz:

    http://readme.techtick.de/plugin-fue...s/#prettyPhoto

    -> https://contao.org/de/erweiterungsli...000099.de.html
    Freigegeben bis 3.3.7. Versuch macht Klug, sonst den Entwickler kontaktieren und nachfragen.
    ---------------------------------
    Beste Grüße planepix
    Contao für Webdesigner (Website), Twitter: @contaowebdesign
    weitzeldesign
    Contao-Sprechstunde
    Contao Schulungen: https://www.weitzeldesign.com/cms-co...chulungen.html
    Contao Jahrbuch: www.contao-jahrbuch.de
    Contao Agenturtag: www.contao-agenturtag.de
    Contao Stammtisch Stuttgart: www.contao-stammtisch-stuttgart.de
    Contao 4 Erfahrungen als Gitbook: https://app.gitbook.com/@planepix/s/...-mit-contao-4/
    Contao 4 & Manager Hosterhinweise: https://github.com/contao/contao-manager/wiki

    Schon wieder ein Update?
    Glücklich sind die, die den Wert erkennen – und wertschätzen.
    „Muss man machen wie beim Zahnarzt. Der bestraft einen auch mit hohen Rechnungen wenn man die Pflege vernachlässigt.”

  6. #6
    Contao-Nutzer
    Registriert seit
    26.10.2012.
    Beiträge
    52

    Standard

    Danke. Kannte ich schon - habe ich auch in einer anderen Installation schon benutzt - aber in dieser (mit 3.5) habe ich es nicht zum Laufen gebracht. Wird halt auch nicht offiziell unterstützt.
    Schade.

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

    Standard

    Wenn ich mit dem Downloads-Element einen Ordner einbinde, werden in Contao 3.5.24 auch die Metaangaben berücksichtigt. Hier ein Auszug aus dem Original ce_downloads.html5:
    PHP-Code:
        <?php foreach ($this->files as $file): ?>
          <li><?= Image::getHtml($file['icon'], '''class="mime_icon"'?> <a href="<?= $file['href'?>" title="<?= $file['title'?>"><?= $file['link'?> <span class="size">(<?= $file['filesize'?>)</span></a></li>
        <?php endforeach; ?>
    title ist dabei, nur caption fehlt. Aber das kann man ja selbst hinzufügen.
    Ich wundere mich nur gerade: In link scheint entweder der Dateiname oder der Inhalt von title zu stehen.
    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

  8. #8
    Contao-Fan
    Registriert seit
    28.11.2009.
    Ort
    Remscheid
    Beiträge
    837

    Standard

    Hallo zusammen,

    ich stehe gerade mit der 4.4 vor einen ähnlichen Problem.

    Ich möchte das das Title-Attribut des Links einen bestimmten Text beinhaltet. Aber irgendwie werden hat hier die Meta-Angaben nur teilweise ausgewerte:

    Aus dem Feld "Titel" wird der Linktext im Template ausgegeben über "$file['link']", das Feld "Alternativer Text" wird bei Download anscheinen nicht berücksichtigt, das würde ich gerne für meinen Title-Text verwenden.

    Im Template gibt es zwar ein Statement
    HTML-Code:
    title="<?= $file['title'] ?>"
    aber daraus wird dann "Die Datei ... herunterladen". Wo kommt dieser Text her? Ich möchte den durch den Text aus "Alternativer Text" ersetzten.

    Bei den Download handelt es sich um Zeitungsartitel und ich muss die Quelle nennen.

    Neelix

  9. #9
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.897
    Partner-ID
    10107

    Standard

    Überprüfe einfach mit
    PHP-Code:
    <?php $this->showTemplateVars() ?>
    ob alle Meta Informationen pro Datei zur Verfügung stehen. Wenn ja, dann ändere das Template einfach dementsprechend. Wenn nein, müsstest du dir die Meta Informationen nochmal selbst aus der Datenbank holen und ausgeben.

  10. #10
    Contao-Fan
    Registriert seit
    28.11.2009.
    Ort
    Remscheid
    Beiträge
    837

    Standard

    Das scheint unter Contao 4.x so nicht mehr zu klappen, da kommt nur jede Menge Müll raus.
    Guck dir das mal im Quellext an: https://www.bergischer24stundenlauf....ssearchiv.html

  11. #11
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.897
    Partner-ID
    10107

    Standard

    In Contao 4.4 wird der Symfony VarDumper verwendet. Du musst
    PHP-Code:
    <?php $this->showTemplateVars() ?>
    verwenden, nicht
    PHP-Code:
    <!--
    <?php $this->showTemplateVars() ?>
    -->

  12. #12
    Contao-Fan
    Registriert seit
    28.11.2009.
    Ort
    Remscheid
    Beiträge
    837

    Standard

    dann steht der Kram aber für jeden sichtbar auf der Seite, dass will ich ja gerade auch nicht.

    Irgendwie taucht von den Werten da gar nichts auf oder bin ich im falschen Film?

  13. #13
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.897
    Partner-ID
    10107

    Standard

    Zitat Zitat von neelix Beitrag anzeigen
    dann steht der Kram aber für jeden sichtbar auf der Seite, dass will ich ja gerade auch nicht.
    Du könntest es zumindest nur für deinen Backend User ausgeben lassen. zB:
    PHP-Code:
    <?php if (\BackendUser::getInstance()->username == '…'$this->showTemplateVars() ?>

  14. #14
    Contao-Fan
    Registriert seit
    28.11.2009.
    Ort
    Remscheid
    Beiträge
    837

    Standard

    Das hat irgendwie einen Nebeneffekt. Bei jedem Klick im Backend werde ich ausgeloggt.

    Aber spannender ist die Frage, warum sehe ich dem Dump keine der Datei-Eigenschaften.

  15. #15
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.897
    Partner-ID
    10107

    Standard

    Zitat Zitat von neelix Beitrag anzeigen
    Das hat irgendwie einen Nebeneffekt. Bei jedem Klick im Backend werde ich ausgeloggt.
    Dann mach lieber folgendes:
    PHP-Code:
    <?php if (\System::getContainer()->get('kernel')->isDebug()) $this->showTemplateVars() ?>
    und greife über app_dev.php auf die Seite zu.

  16. #16
    Contao-Fan
    Registriert seit
    28.11.2009.
    Ort
    Remscheid
    Beiträge
    837

    Standard

    Ok, über diesen Weg und nachdem ich app_dev mit einem Benutzer versehen habe, klappt es.

    Aber spannender ist die Frage, warum sehe ich dem Dump keine der Datei-Eigenschaften. Noch nicht mal den Titel, den Contao ja ausgibt und ich habe den Code in die foreach-Schleife gepackt.

  17. #17
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.897
    Partner-ID
    10107

    Standard

    Zitat Zitat von neelix Beitrag anzeigen
    Aber spannender ist die Frage, warum sehe ich dem Dump keine der Datei-Eigenschaften. Noch nicht mal den Titel, den Contao ja ausgibt und ich habe den Code in die foreach-Schleife gepackt.
    Was genau sieht man nun? Zeige mal einen Screenshot, wo alles aufgeklappt ist.

    In die Schleife brauchst du das nicht - da gibst du das selbe ja dann einfach nur mehrmals aus.
    Geändert von Spooky (12.07.2017 um 18:24 Uhr)

  18. #18
    Contao-Fan
    Registriert seit
    28.11.2009.
    Ort
    Remscheid
    Beiträge
    837

    Standard

    Code:
    array:89 [?
      "id" => "146"
      "pid" => "14"
      "ptable" => "tl_article"
      "sorting" => "272"
      "tstamp" => "1499783852"
      "type" => "downloads"
      "headline" => "2017"
      "text" => null
      "addImage" => ""
      "singleSRC" => null
      "alt" => ""
      "imageTitle" => ""
      "size" => ""
      "imagemargin" => ""
      "imageUrl" => ""
      "fullsize" => ""
      "caption" => ""
      "floating" => "above"
      "html" => null
      "listtype" => ""
      "listitems" => null
      "tableitems" => null
      "summary" => ""
      "thead" => ""
      "tfoot" => ""
      "tleft" => ""
      "sortable" => ""
      "sortIndex" => "0"
      "sortOrder" => "ascending"
      "mooHeadline" => ""
      "mooStyle" => ""
      "mooClasses" => ""
      "highlight" => ""
      "code" => null
      "url" => ""
      "target" => ""
      "titleText" => ""
      "linkTitle" => ""
      "embed" => ""
      "rel" => ""
      "useImage" => ""
      "multiSRC" => array:2 [?
        0 => b"²y-õf6\x11ç¬ DŠ[Ø}ÿ"
        1 => b"ÑbGø`¬\x11ç¬ DŠ[Ø}ÿ"
      ]
      "orderSRC" => b"a:2:{i:0;s:16:"ÑbGø`¬\x11ç¬ DŠ[Ø}ÿ";i:1;s:16:"²y-õf6\x11ç¬ DŠ[Ø}ÿ";}"
      "useHomeDir" => ""
      "perRow" => "4"
      "perPage" => "0"
      "numberOfItems" => "0"
      "sortBy" => "custom"
      "galleryTpl" => ""
      "playerSRC" => null
      "youtube" => ""
      "posterSRC" => null
      "playerSize" => ""
      "autoplay" => ""
      "sliderDelay" => "0"
      "sliderSpeed" => "300"
      "sliderStartSlide" => "0"
      "sliderContinuous" => ""
      "cteAlias" => "0"
      "articleAlias" => "0"
      "article" => "0"
      "form" => "0"
      "module" => "0"
      "protected" => ""
      "groups" => null
      "guests" => ""
      "cssID" => ""
      "invisible" => ""
      "start" => ""
      "stop" => ""
      "com_order" => "ascending"
      "com_perPage" => "0"
      "com_moderate" => ""
      "com_bbcode" => ""
      "com_disableCaptcha" => ""
      "com_requireLogin" => ""
      "com_template" => "com_default"
      "customTpl" => "ce_downloads"
      "metaIgnore" => ""
      "vimeo" => ""
      "overwriteMeta" => ""
      "classes" => []
      "typePrefix" => "ce_"
      "hl" => "h2"
      "Template" => FrontendTemplate {#843 ?}
      "files" => array:2 [?
        0 => array:13 [?
          "id" => "337"
          "uuid" => b"ÑbGø`¬\x11ç¬ DŠ[Ø}ÿ"
          "name" => "RGA - Nach der Feier geht´s auf die Strecke.pdf"
          "title" => "Die Datei RGA - Nach der Feier geht´s auf die Strecke.pdf herunterladen"
          "link" => "RGA - Nach der Feier geht´s auf die Strecke"
          "caption" => ""
          "href" => "app_dev.php/geschichte/pressearchiv.html?file=files/files/presse/RGA%20-%20Nach%20der%20Feier%20geht%C2%B4s%20auf%20die%20Strecke.pdf"
          "filesize" => "1,4 MiB"
          "icon" => "assets/contao/images/iconPDF.svg"
          "mime" => "application/pdf"
          "meta" => array:4 [?
            "title" => "RGA - Nach der Feier geht´s auf die Strecke"
            "alt" => ""
            "link" => ""
            "caption" => ""
          ]
          "extension" => "pdf"
          "path" => "/var/www/web0/html/www.bergischer24stundenlauf.de/contao4/files/files/presse"
        ]
        1 => array:13 [?
          "id" => "338"
          "uuid" => b"²y-õf6\x11ç¬ DŠ[Ø}ÿ"
          "name" => "la_kw27_web.pdf"
          "title" => "Die Datei la_kw27_web.pdf herunterladen"
          "link" => "LA - Wo laufen sie denn?"
          "caption" => ""
          "href" => "app_dev.php/geschichte/pressearchiv.html?file=files/files/presse/la_kw27_web.pdf"
          "filesize" => "151,1 KiB"
          "icon" => "assets/contao/images/iconPDF.svg"
          "mime" => "application/pdf"
          "meta" => array:4 [?
            "title" => "LA - Wo laufen sie denn?"
            "alt" => "Quelle: Lüttringhauser Anzeiger / Lennep im Blick"
            "link" => ""
            "caption" => ""
          ]
          "extension" => "pdf"
          "path" => "/var/www/web0/html/www.bergischer24stundenlauf.de/contao4/files/files/presse"
        ]
      ]
      "style" => ""
      "class" => "ce_downloads"
      "inColumn" => "main"
    ]

  19. #19
    Contao-Fan
    Registriert seit
    28.11.2009.
    Ort
    Remscheid
    Beiträge
    837

    Standard

    Ok, mit dieser kleinen Anpassung funktioniert es:

    PHP-Code:
    <?php $this->extend('block_searchable'); ?>

    <?php $this->block('content'); ?>

      <ul>
        <?php foreach ($this->files as $file): ?>
          <li class="download-element ext-<?= $file['extension'?>">
            <a href="<?= $file['href'?>" title="<?= $file['meta']['alt'?>"><?= $file['link'?> <span class="size">(<?= $file['filesize'?>)</span></a>
          </li>
        <?php endforeach; ?>
      </ul>

    <?php $this->endblock(); ?>
    Frage mich nur, warum die Felder nicht direkt berücksichtigt werden, wenn sie gefüllt sind.
    Geändert von neelix (12.07.2017 um 18:26 Uhr)

  20. #20
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.897
    Partner-ID
    10107

    Standard

    Die Meta Informationen sind also da

  21. #21
    Contao-Fan
    Registriert seit
    28.11.2009.
    Ort
    Remscheid
    Beiträge
    837

    Standard

    aber gut versteckt.

  22. #22
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.897
    Partner-ID
    10107

    Standard

    Naja eigentlich sind sie genau dort wo man sie erwarten würde .

  23. #23
    Contao-Fan
    Registriert seit
    01.11.2013.
    Beiträge
    644

    Standard

    Ich bräuchte genau das, aber für das Template ce_download.html5 (also Einzahl).

    ce_downloads.html5:
    Code:
    <?= $file['link'] ?>
    Gibt brav den Meta Titel aus.

    ce_download.html5:
    Code:
    <?= $this->link ?>
    Weigert sich beharrlich und gibt den Dateinamen aus

    ce_download.html5:
    Code:
    <?= $file->link ?>
    Gibt gar nichts aus.

    Um der Frage vorzugreifen, warum ich nicht einfach ce_downloads.html5 verwende, muss ich hinzufügen dass ich das ganze für Custom Elements von Premium Contao verwende. Hier wurde mir gesagt dass das Plugin auch nur auf das Contao-eigene ce_download.html5 zurück greift. Und solange es damit nicht funktioniert, habe ich wohl mit CE auch keine Chance.

  24. #24
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.897
    Partner-ID
    10107

    Standard

    Im Download Inhaltselement musst du dir die Metadaten wohl selbst aus der Datenbank holen.

  25. #25
    Contao-Fan
    Registriert seit
    01.11.2013.
    Beiträge
    644

    Standard

    Danke für die Antwort - nun bin ich zumindest aufgeklärt dass es auf Standardwegen nicht geht.

    Aufgrund eher bescheidenen PHP Kenntnissen werde ich mir wohl das (Custom-)Element so zusammenschustern dass abgefragt wird welche Datei verknüpft werden soll und auch wie diese heißen soll. Also mehr oder weniger ein Nachbau des Contao-eigenen Download Elements. Doch das ist hier nicht das Thema.

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

    Standard

    Zitat Zitat von Spooky Beitrag anzeigen
    Im Download Inhaltselement musst du dir die Metadaten wohl selbst aus der Datenbank holen.
    Beispiel im Template ce_download:
    PHP-Code:
    <?php
        $metadaten 
    unserialize(\FilesModel::findByPath($this->singleSRC)->meta); 
        
    $caption $metadaten['de']['caption'] ? $metadaten['de']['caption'] : '';
    ?>
    Die Variable $caption, die hier die deutsche Bildunterschrift enthält, kann man dann in der Ausgabe weiterverwenden.
    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

  27. #27
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.897
    Partner-ID
    10107
    » sponsor me via GitHub or PayPal or Revolut

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
  •