Custom Fields für zusätzliche Email Adressen der Kontakt Komponente einrichten - Spamschutz

  • Joomla Version
    Joomla! 5.0.2 Stable
    PHP Version
    PHP 8.1.x
    Hoster
    Lokal

    Hallo zusammen,

    Ich möchte unter der Kontaktseite im Adressenbereich, zusätzlich noch weitere Kontakt Mailadressen einbinden. Ich
    habe das über Felder realisiert. Es funktioniert auch, die Mailadressen werden korrekt ausgegeben.

    Die Hauptmailadresse des Projektes wird auch korrekt vor Spambots verschleiert, leider aber die zusätzlichen
    Mailadressen nicht, die über Custom Fields erstellt wurden.


    Code
    <dd class="dlAbstand">
      <span class="contact-street">
      Team xxx</span>
    
      <span class="jicons-text">
      <a href="mailto:team@example.com">team@example.com</a>
      </span>
     </dd>



    Jemand eine Idee, wie ich erreichen kann das die zusätzlichen Mailadressen auch korrekt verschleiert werden?

    *redLine

  • Der erste Versuch war mit Feld Typ Text (der funktioniert in der Darstellung am ehesten.

    PHP
    <a href="mailto:<?php  echo $myCustomFields['mail']['value']; ?>" class="mailBuero"><?php  echo $myCustomFields['mail']['value']; ?></a>

    ... und ich habe es auch mit Feld Typ URL versucht, hier habe ich Schemata auf MAILTO ausgewählt.
    Das funktioniert überhaupt nicht.

  • ich habe es auch mit Feld Typ URL versucht, hier habe ich Schemata auf MAILTO ausgewählt.
    Das funktioniert überhaupt nicht

    Wenn man das Feld mit diesen Einstellungen nutzt, dann muss man zur E-Mail Adresse das "mailto:" mit in das Feld schreiben.


    Zu dem Problem mit der E-Mail-Verschleierung, gibt es noch ein Issiu und offenen PR


    Email cloak plugin fails for emails with IDN · Issue #39811 · joomla/joomla-cms
    Steps to reproduce the issue Insert example link in article: test@домен.ком and save. Expected result Cloaked email Actual result test@домен.ком Additional…
    github.com

    Email cloak plugin fails for emails with IDN by Kaushik1216 · Pull Request #39888 · joomla/joomla-cms
    Pull Request for Issue #39811 Summary of Changes change regular expression of Search email and patttern Testing Instructions use any language email for…
    github.com


    Ich war mal an diesen Problemen dran, aber dieser PR wurde nie abgeschlossen. Das Problem ist, dass die Ausgabe der Mail-Adresse zwischen HTML-Tags sind und diese nicht erkannt werden. Ich war ebenfalls mal an der Problemlösung dran:

    regex101: build, test, and debug regex
    Regular expression tester with syntax highlighting, explanation, cheat sheet for PHP/PCRE, Python, GO, JavaScript, Java, C#/.NET, Rust.
    regex101.com

    Wenn man die Lösung hat, dann muss man nur noch das passende Problem finden.

  • @LukasHH Vielleicht verstehe ich deinen Hinweis falsch, aber...


    Code
    <dd class="dlAbstand">
             <span class="contact-titel">Frau Mustermann</span>
             
               <span class="jicons-text">
                    <a href="mailto:teamleitung@example.com" class="mailBuero">teamleitung@example.com</a>
              </span>
    </dd>
    
    <!-- die Ausgabe der Mailadresse wird hier über Feld Typ Text erreicht -->


    die Ausgabe ist doch in etwa ähnlich, wie eine Mailadresse innerhalb eines einfachen Beitrages, und auf der gleichen Seite der Kontaktseite, wird die
    Hauptmail Adresse korrekt versteckt?

  • Jein - das auf den Kontakt-Seite wird vermutlich etwas anders aussehen.

    Das Issiu entspricht Deinem Problem. Der PR sollte das Problem lösen, ist aber noch nicht vollständig umgesetzt. Enthält zudem auch noch Fehler. Man kann nur an diesem nichts ändern, weil das von demjenigen blockiert wird, der den PR erstellt hat. Der macht aber an der Stelle scheinbar nicht weiter. Daher ist das Problem immer noch ungelöst.

    Wenn man die Lösung hat, dann muss man nur noch das passende Problem finden.

  • die Ausgabe ist doch in etwa ähnlich, wie eine Mailadresse innerhalb eines einfachen Beitrages,

    Ich habe in meiner Test-Umgebung nochmal nachgeschaut und Du hast Recht. Eigentlich sollte das verschleiert werden. Bei dem Issiu und PR geht es um eine E-Mail im Klartext, die sich zwischen HTML-Tags befinden. Dein genannter Fall sollte verschleiert werden.


    Vermutlich spielt hier noch etwas anderes mit rein.


    Wenn man eine E-Mail mit dem genannten Format in einem Modul schreibt, dann wird diese auch nur verschleiert, wenn im Modul "Inhalte vorbereiten" auf Ja gesetzt ist. Das heißt, da wird erst der Inhalt des Moduls generiert, bevor die Plugins starten. Ist es auf "Nein" gestellt, wird der Inhalt nach den Plugins ausgeliefert und dann findet keine Verschleierung statt.


    Das wird bei den Cumstom Fields vermutlich genauso sein. Das heißt, die Daten (E-Mail Adresse) werden nach den Plugins ausgeliefert und somit werden diese für die Verschleierung nicht erkannt. Das ist aber auch erst einmal nur eine Vermutung.

    Wenn man die Lösung hat, dann muss man nur noch das passende Problem finden.

  • @Dautrich das war ein guter Tipp, mit dem Plugin 'Advanced Custom Fields' konnte ich mein Problem tatsächlich lösen. Danke vielmals. :)
    Die Erweiterung gibt es auch als kostenlose Version, und es funktioniert, allerdings muss man sich vorher anmelden. Schön wäre es, wenn das in Joomla optimiert wird, so das man keine externe Erweiterung braucht. Aber alles gut, ich bin froh das ich eine Lösung gefunden habe. Danke nochmals an alle.

    https://www.tassos.gr/joomla-e…elds/docs/the-email-field

  • Die Erweiterung gibt es auch als kostenlose Version, und es funktioniert, allerdings muss man sich vorher anmelden. Schön wäre es, wenn das in Joomla optimiert wird, so das man keine externe Erweiterung braucht. Aber alles gut, ich bin froh das ich eine Lösung gefunden habe. Danke nochmals an alle

    Tassos Marinos gehört aus meiner Sicht zu den Erweiterungs-Entwicklern, wo man problemlos zuschlagen kann. Und nicht für alles wird es Lösungen im Core geben, obwohl gerade bei den Custom Fields noch einiges in Bewegung ist.