Anker im Newsletter setzen (Avisota)

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • eyekey
    Contao-Nutzer
    • 10.02.2012
    • 3

    #1

    Anker im Newsletter setzen (Avisota)

    Hallo,

    wir konfigurieren gerade einen Newsletter mit Avisota unter Contao 2.11.3 und sind dabei auf folgendes Problem gestoßen:

    Wir möchten gerne Anker im Kopf des Newsletters einbinden, die auf die jeweiligen Artikel im Newsletter verweisen. Ideal wäre etwas dynamisches - z.B. eine dynamisch generierte Liste der H1 der Artikel und dazu dynamisch generierte verlinkte Anker. Das wäre "nice-to-have". Geht aber nicht, oder?

    Es würde aber schon reichen, die Anker im RTE per Hand zu setzen (ohne direkt im HTML-Modus schreiben zu müssen).

    Problem: Setze ich einfach einen Link, entsteht daraus: {{env::request}}#zwei oder {{link::#drei}}
    Keiner der beiden Links funktioniert in der eMail.

    Was mache ich falsch?
    Zuletzt geändert von eyekey; 22.06.2012, 10:30.
    Always active.
  • Dr. Jo
    Contao-Nutzer
    • 11.08.2009
    • 218

    #2
    Zitat von eyekey Beitrag anzeigen
    Hallo,

    wir konfigurieren gerade einen Newsletter mit Avisota unter Contao 2.11.3 und sind dabei auf folgendes Problem gestoßen:

    Wir möchten gerne Anker im Kopf des Newsletters einbinden, die auf die jeweiligen Artikel im Newsletter verweisen. Ideal wäre etwas dynamisches - z.B. eine dynamisch generierte Liste der H1 der Artikel und dazu dynamisch generierte verlinkte Anker. Das wäre "nice-to-have". Geht aber nicht, oder?

    Es würde aber schon reichen, die Anker im RTE per Hand zu setzen (ohne direkt im HTML-Modus schreiben zu müssen).

    Problem: Setze ich einfach einen Link, entsteht daraus: {{env::request}}#zwei oder {{link::#drei}}
    Keiner der beiden Links funktioniert in der eMail.

    Was mache ich falsch?
    Kann ich bestätigen, das ist so. Ich habe im Html-Modus die {{env::request}} rausgelöscht, damit die Anker im Newsletter funktionieren. Nachteil: Die Anker funktionieren dann nicht in der Online-Version, sofern Du die auch nutzt. Das liegt am Base-Tag, den Contao einsetzt. Workaround wäre in dem Fall ein JavaScript in einem eigenen Layout. Ist aber alles ein wenig Gefrickel, zugegeben. Ich stelle das mal bei Github als Bug ein.

    Viel Erfolg!

    Dr. Jo

    Kommentar

    • eyekey
      Contao-Nutzer
      • 10.02.2012
      • 3

      #3
      PHP helps

      Nur für die Akten und damit andere Suchende hier eine Lösung finden:
      Wir haben das "Problem" mit PHP im Template des Newsletters gelöst.
      Always active.

      Kommentar

      • Dr. Jo
        Contao-Nutzer
        • 11.08.2009
        • 218

        #4
        Zitat von eyekey Beitrag anzeigen
        Nur für die Akten und damit andere Suchende hier eine Lösung finden:
        Wir haben das "Problem" mit PHP im Template des Newsletters gelöst.
        Hallo eyekey,

        vielleicht kannst Du den Suchenden ja auch noch die Lösung verraten ...

        Gruß

        Dr. Jo

        Kommentar

        • eyekey
          Contao-Nutzer
          • 10.02.2012
          • 3

          #5
          Details

          Mein engagierter Coder hat folgende Lösung entwickelt:

          PHP-Code:
          <?php $pos = 0; $toci=substr_count($this->body, 'tocanker');
                                  if ($toci > 0) {
                                      echo "<h1>Table of content</h1>";
                                      $pos = stripos($this->body, 'tocanker');
                                      for ($tocc=0; $tocc < $toci; $tocc++) {
                                          echo "<a href=\"#tocanker".($tocc+1)."\">";
                                          $pos1=stripos($this->body, '</a>', $pos)+4; $pos2=stripos($this->body, '<', $pos1);
                                          echo substr($this->body,($pos1),($pos2-$pos1));
                                          $pos = stripos($this->body, 'tocanker', $pos2+1);
                                          echo "</a><br/>";
                                      }
                                      ?>
          Im Grunde funktioniert das so: Die Artikel-Titel werden abgefragt, gelistet und mit einem Anker versehen. Wahrscheinlich ganz simpel – für Leute die etwas davon verstehen.

          Ich habe übrigens keine Anhnung von PHP
          Always active.

          Kommentar

          • cheche
            Contao-Nutzer
            • 08.03.2010
            • 105

            #6
            Hallo!
            Das wäre genau was ich brauche ;-)
            Leider wird bei mir der Newsletter (nach Einbau deines scripts) dann in der Vorschau nicht angezeigt und auch nicht versendet. Hättest du eventuell noch das Newslettertemplate "bei der Hand" um zu sehen wie es dort eingebaut wird.
            Vielen Dank!
            cheche

            Kommentar

            Lädt...