Ergebnis 1 bis 8 von 8

Thema: TWIG: Admin Mail im Wartungstemplate

  1. #1
    Contao-Fan Avatar von herr rilke
    Registriert seit
    29.01.2011.
    Ort
    Münster
    Beiträge
    401

    Standard TWIG: Admin Mail im Wartungstemplate

    hallo ich versuche mit etwas wie

    Code:
    {{ $GLOBALS['TL_CONFIG']['adminEmail']  }}
    eine möglichkeit zu geben, dass der besucher kontakt zum admin aufnehmen kann, falls in der wartung etwas schief läuft oder wie auch immer.

    das funktioniert so nicht.

    aber wie dann?

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

    Standard

    Da müsstest du dir eine entsprechende Twig Extension schreiben.
    » sponsor me via GitHub or PayPal or Revolut

  3. #3
    Contao-Fan Avatar von herr rilke
    Registriert seit
    29.01.2011.
    Ort
    Münster
    Beiträge
    401

    Standard

    oha, null ahnung davon.

    wo muss ich die ablegen, wie aufrufen?

    an ein gutes altes PHP template werde ich perspektivisch nicht mehr kommen, oder? demnächst läuft nur noch TWIG.

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

  5. #5
    Contao-Fan Avatar von herr rilke
    Registriert seit
    29.01.2011.
    Ort
    Münster
    Beiträge
    401

    Standard

    ja, danke dir, den link hatte ich auch schon gefunden.... aber:

    wenn ich richtig verstehe, brauche ich eine php-funktion, die nur diesen wert zurück gibt.
    aber, wo kann ich die einbinden?
    PHP-Code:
    function getContaoAdminMail() {
        global 
    $GLOBALS;
        return 
    $GLOBALS['TL_CONFIG']['adminEmail'];

    meine TWIG erweiterung könnte dann so aussehen:
    PHP-Code:
    class MyAdminMailExtension extends \Twig\Extension\AbstractExtension
    {
        public function 
    getFunctions()
        {
            return [
                new \
    Twig\TwigFunction('getAdminMail', [$this'getAdminMail']),
            ];
        }

        public function 
    getAdminMail()
        {
            return 
    getContaoAdminMail();
        }


    und wie registriere ich sie?

    PHP-Code:
    $twig->addExtension(new MyAdminMailExtension() ); 

    um sie dann mit
    PHP-Code:
    {{ getAdminMail() }} 
    ausgeben zu können.

    (junge, was für'n aufwand, herr twig)

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

    Standard

    Zitat Zitat von herr rilke Beitrag anzeigen
    wenn ich richtig verstehe, brauche ich eine php-funktion, die nur diesen wert zurück gibt.
    Korrekterweise solltest du das ContaoFramework injecten, initialisieren und dann Contao\Config und Contao\StringUtil nutzen:
    PHP-Code:
    public function getAdminEmail(): ?string
    {
        
    $this->framework->initialize();
        [
    $name$email] = StringUtil::splitFriendlyEmail(Config::get('adminEmail'));
        return 
    $email;

    » sponsor me via GitHub or PayPal or Revolut

  7. #7
    Contao-Fan Avatar von herr rilke
    Registriert seit
    29.01.2011.
    Ort
    Münster
    Beiträge
    401

    Standard

    ok, danke, mann!
    wär ich im leben nicht ...

    und wie binde ich das ganze in contao ein?

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

    Standard

    Du musst das machen was in der Dokumentation steht. Insgesamt ist das:

    1. Extension anlegen.
    2. Extension als Service registrieren und mit twig.extension taggen.
    » 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
  •