Contao-Camp 2024
Ergebnis 1 bis 26 von 26

Thema: Contao verlangt eine Lizenz-URL bei der Eingabe von Bild-Lizenzen

  1. #1
    Contao-Fan
    Registriert seit
    29.06.2016.
    Beiträge
    500

    Standard Contao verlangt eine Lizenz-URL bei der Eingabe von Bild-Lizenzen

    Wenn ich in der Dateiverwaltung bei einem Bild eine Lizenz-Info (Metadaten) eingeben möchte, verlangt Contao von mir plötzlich eine URL.
    Siehe hier: Bildschirmfoto 2022-06-14 um 15.12.21.png

    Bisher konnte ich auch einfachen Text eingeben – ich hab keine Ahnung warum es nun eine URL sein muss.
    Hattet ihr das schon mal?
    Bzw. wisst ihr wie ich das umgehen kann?

    Vielen Dank für eure Hilfe!

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

    Standard

    Das Feld war immer nur für die Lizenz-URL vorgesehen. In der neuesten Contao Version wurde die Prüfung eingebaut und das Label geändert, damit das klarer ist.
    » sponsor me via GitHub or PayPal or Revolut

  3. #3
    Contao-Fan
    Registriert seit
    29.06.2016.
    Beiträge
    500

    Standard

    Ok, danke für die Info Spooky.

    Kann ich diese URL-Überprüfung vielleicht so in der Art:
    Code:
    $GLOBALS['TL_DCA']['tl_files']['fields']['meta']['eval']['wie auch immer'] = false;
    ... deaktivieren?

    ... oder ist das zum scheitern verurteilt weil diese Meta-Daten ja spezielle Felder sind?

  4. #4
    Contao-Fan Avatar von Fehrmann
    Registriert seit
    04.07.2009.
    Ort
    Wismar
    Beiträge
    580
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hi,

    ungetestet, würde ich es mit

    Code:
    unset($GLOBALS['TL_DCA']['tl_files']['fields']['meta']['eval']['metaFields']['license']['rgxp']);
    versuchen. Siehe Github

    Gruss René
    Software-Entwickler Backend/Frontend

  5. #5
    Contao-Fan Avatar von designpilot
    Registriert seit
    16.06.2013.
    Ort
    9532 Rickenbach bei Wil
    Beiträge
    272
    Contao-Projekt unterstützen

    Support Contao

    Standard Contao verlangt eine Lizenz-URL bei der Eingabe von Bild-Lizenzen

    Oder Du trägst den Link gemäss den Richtlinien von shutterstock.com ein:

    https://www.shutterstock.com/de/license

    Weil wenn Du das Bild ohne Lizenz Url angiebst, dann kann es passieren das Du eine Abmahnung kriegst.

    Im Impressum unter Bildnachweise solltest Du es eigentlich einpflegen, aber das Modul ist ja genau für das da, dass man es eben im Impressum nicht noch zusätzlich angeben muss wenn ich das richtig sehe.


    Gesendet von iPhone mit Tapatalk Pro
    Geändert von designpilot (14.06.2022 um 16:24 Uhr)

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

    Standard

    Zitat Zitat von Fehrmann Beitrag anzeigen
    Hi,

    ungetestet, würde ich es mit

    Code:
    unset($GLOBALS['TL_DCA']['tl_files']['fields']['meta']['eval']['metaFields']['license']['rgxp']);
    versuchen. Siehe Github

    Gruss René
    Das würde ich nicht empfehlen, weil dann ist die Frontendausgabe invalid.
    » sponsor me via GitHub or PayPal or Revolut

  7. #7
    Contao-Fan
    Registriert seit
    29.06.2016.
    Beiträge
    500

    Standard

    Ich hab auch viele Bilder die als Lizenzhinweis nur den Namen des Fotografen enthalten.
    D.h. ich kann die bei der aktuellen Contao-Version nicht mehr eintragen?

    ... warum geht man davon aus dass ein Lizenzhinweis immer eine URL ist?

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

  9. #9
    Contao-Fan
    Registriert seit
    29.06.2016.
    Beiträge
    500

    Standard

    Zitat Zitat von Fehrmann Beitrag anzeigen
    Hi,

    ungetestet, würde ich es mit

    Code:
    unset($GLOBALS['TL_DCA']['tl_files']['fields']['meta']['eval']['metaFields']['license']['rgxp']);
    versuchen. Siehe Github

    Gruss René
    Vielen Dank, funktioniert

    @Spooky:
    Was bedeutet eine "invalide Frontendausgabe"?

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

  11. #11
    Contao-Fan
    Registriert seit
    29.06.2016.
    Beiträge
    500

    Standard

    Um das mit der invaliden Frontendausgabe zu verhindern kann ich die Lizenz im image.html5 einfach so ...
    Code:
    <?php if($this->license): ?>
        <p class="ce_image__license" ><?= $this->license ?></p>
    <?php endif; ?>
    ... ausgeben nehme ich an.

    Aber seltsamerweise steht mir $this->license nach der Anwendung des obigen Hack's im Template nicht mehr zur Verfügung

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

    Standard

    Nein, du müsstes die JSON-LD Ausgabe komplett unterbinden. Oder zumindest aus dem JSON-LD den jeweiligen Eintrag entfernen.
    » sponsor me via GitHub or PayPal or Revolut

  13. #13
    Contao-Fan
    Registriert seit
    29.06.2016.
    Beiträge
    500

    Standard

    ... ok, keine Ahnung wie ich das mache und wo die überhaupt ist

    Aber zurück zum Ursprungsproblem:
    Kennt hier vielleicht irgend jemand eine Möglichkeit wie ich in Contao einen simplen Lizenz-Hinweis bei einem Bild anbringen kann?
    Nur den Namen des Fotografen, keine URL.
    Geändert von thesweetg (15.06.2022 um 09:50 Uhr)

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

    Standard

    Du kannst selbst ein zusätzliches Meta Feld hinzufügen:

    PHP-Code:
    // contao/dca/tl_files.php
    $GLOBALS['TL_DCA']['tl_files']['fields']['meta']['eval']['metaFields']['copyright'] = 'maxlength="1024"'
    Oder du nutzt eine Extension wie https://extensions.contao.org/?q=cop...pyright-bundle
    » sponsor me via GitHub or PayPal or Revolut

  15. #15
    Contao-Fan
    Registriert seit
    29.06.2016.
    Beiträge
    500

    Standard

    Danke für den Tip.

    Hätte es jetzt mit beiden Möglichkeiten versucht:

    Die Eingabefelder sind da:
    Bildschirmfoto 2022-06-15 um 10.02.44.png

    Aber im Template image.html5 wir mir mit:
    Code:
    <?php dump($this->copyright); ?>
    <?php dump($this->ic_copyright); ?>
    ... nur "null" ausgegeben.

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

    Standard

    Dazu müsstet du einen FileMetadataEvent Listener implementieren, wo du ein neues Metadata Objekt mit den zusätzlichen Daten setzt.

    // Wobei, das geht eigentlich nicht damit.
    » sponsor me via GitHub or PayPal or Revolut

  17. #17
    Contao-Fan
    Registriert seit
    29.06.2016.
    Beiträge
    500

    Standard

    Hier mein Versuch ein "normales" Feld hinzuzufügen:

    Code:
    // contao/dca/tl_files.php
    
    $GLOBALS['TL_DCA']['tl_files']['fields']['license'] = [
        'exclude'   => true,
        'inputType' => 'text',
        'eval'      =>
        [
            'maxlength' => 128,
            'tl_class'  => 'w50'
        ],
        'sql' => "varchar(128) NOT NULL default ''"
    ];
    
    PaletteManipulator::create()
        ->addField('license', '?????_legend', PaletteManipulator::POSITION_APPEND)
        ->applyToPalette('???????', 'tl_files')
    ;
    ... was muss ich da beim PaletteManipulator angeben?
    Und kann ich auf dieses Feld dann im image.html5 Template zugreifen?

  18. #18
    Contao-Fan
    Registriert seit
    19.06.2009.
    Ort
    Mittelhessen
    Beiträge
    462

    Standard

    Vielleicht hilft Dir die Erweiterung Lizenzhinweise für Bilder https://github.com/Tastaturberuf/con...pyright-bundle bei der Lösung.

  19. #19
    Contao-Fan
    Registriert seit
    29.06.2016.
    Beiträge
    500

    Standard

    Zitat Zitat von andre.5tz Beitrag anzeigen
    Vielleicht hilft Dir die Erweiterung Lizenzhinweise für Bilder https://github.com/Tastaturberuf/con...pyright-bundle bei der Lösung.
    Leider nicht wirklich: Ich möchte die Copyright-Hinweise nicht in einem eigenen Modul anzeigen.
    Ich möchte dass sie dort sichtbar sind wo das Bild zum Einsatz kommt.

    Hat bis zum letzen Contao-Update mit den Metadaten auch sehr gut funktioniert ...

  20. #20
    Contao-Urgestein Avatar von Franko
    Registriert seit
    22.06.2009.
    Beiträge
    1.503
    Partner-ID
    6122

    Standard

    So ganz hab ich das noch nicht verstanden wenn:
    Eigene Fotos verwendet werden oder z.B. von einem Fotografen stammen

    Was sollte man denn dann eintragen?
    Freelancer, Digital Design Enthusiast, Contao Aficionado and Tutorial Junkie @MoinFranko - Carpe diem ...

  21. #21
    Contao-Urgestein
    Registriert seit
    20.09.2012.
    Ort
    Lüneburger Heide
    Beiträge
    1.971
    Partner-ID
    12207
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Zitat Zitat von Franko Beitrag anzeigen
    So ganz hab ich das noch nicht verstanden wenn:
    Eigene Fotos verwendet werden oder z.B. von einem Fotografen stammen

    Was sollte man denn dann eintragen?
    So wie ich es verstanden habe, muss man da nicht zwingend was eintragen. Nur wenn Lizenzbedingungen eine Bildlizenz (oder Lizenzanmerkung) direkt am Bild erfordern, besteht hier die Möglichkeit eines Eintrages.
    Korrigiert mich bitte, wenn ich daneben liege.

    Grüße
    tschero
    Autodidakt und HobbyWebdesigner

    www.webdesign24.biz
    Screencasts zu Contao

  22. #22
    Contao-Urgestein Avatar von Franko
    Registriert seit
    22.06.2009.
    Beiträge
    1.503
    Partner-ID
    6122

    Standard

    Verstanden.
    Evtl. könntet ich mich diesbezüglich (CreativeWork Object) erhellen:

    According to https://schema.org/license license is supposed to be either an URL or a CreativeWork object.
    (https://github.com/contao/contao/iss...ent-1044356083)
    Freelancer, Digital Design Enthusiast, Contao Aficionado and Tutorial Junkie @MoinFranko - Carpe diem ...

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

  24. #24
    Contao-Urgestein Avatar von Franko
    Registriert seit
    22.06.2009.
    Beiträge
    1.503
    Partner-ID
    6122

    Standard

    Wenn ich es richtig verstanden habe ist das Contao Lizenz Feld dafür aber nicht ausgelegt.
    Freelancer, Digital Design Enthusiast, Contao Aficionado and Tutorial Junkie @MoinFranko - Carpe diem ...

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

    Standard

    Nein, wie schon erwähnt trägst du dort eine URL ein.
    » sponsor me via GitHub or PayPal or Revolut

  26. #26
    Contao-Fan
    Registriert seit
    29.06.2016.
    Beiträge
    500

    Standard

    Ich hab das jetzt so hingekriegt:

    Schritt #1
    Unter contao/dca/tl_files.php das Lizenz-Feld fürs Backend anlegen:
    Code:
    <?php 
    use Contao\CoreBundle\DataContainer\PaletteManipulator;
    
    $GLOBALS['TL_DCA']['tl_files']['fields']['license'] = [
        'exclude'   => true,
        'inputType' => 'text',
        'eval'      =>
        [
            'maxlength' => 128,
            'tl_class'  => 'w50'
        ],
        'sql' => "varchar(128) NOT NULL default ''"
    ];
    
    PaletteManipulator::create()
        ->addLegend('license_legend', 'meta')
        ->addField(['license'], 'license_legend')
        ->applyToPalette('default', 'tl_files')
    ;

    Schritt #2
    Unter templates/image.html5 das Feld dann abfragen:
    Code:
    ...
    
    <?php $objFile = \Contao\FilesModel::findByPath($this->singleSRC); ?>
    <?php if($objFile->license): ?>
        <p class="ce_image__license" ><?= $objFile->license ?></p>
    <?php endif; ?>

    Vielleicht braucht's ja jemand mal.

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
  •