Ergebnis 1 bis 7 von 7

Thema: Contao E-Mail Klasse - Wie Bild integrieren?

  1. #1
    Contao-Fan Avatar von Schlauchbeutelmaschine
    Registriert seit
    16.06.2009.
    Ort
    Wiesbaden
    Beiträge
    668

    Standard Contao E-Mail Klasse - Wie Bild integrieren?

    Hallo,

    ich nutze die Contao E-Mail Klasse um automatisierte E-Mails zu verschicken.
    Da ich HTML E-Mails verschicke möchte ich ein Logo mit einbinden am besten als CID sodass es auf den Meisten E-Mail Clients direkt angezeigt.

    Momentan binde ich ein externes Bild in der E-Mail ein, was nicht immer angezeigt wird.

    Meine Frage: Die Contao E-Mail Klasse kann wohl cid's erstellen wie man unten im Beispiel sieht. Muss ich diesen Teil in mein Modul übernehmen, oder kann ich direkt darauf zugreifen?

    Grüße Sabri

    PHP-Code:
            // HTML e-mail
            
    if (!empty($this->strHtml))
            {
                if (!
    strlen($this->strImageDir))
                {
                    
    $this->strImageDir TL_ROOT '/';
                }

                
    // Find images
                
    $arrMatches = array();
                
    preg_match_all('/src="([^"]+\.(jpe?g|png|gif|bmp|tiff?|swf))"/Ui'$this->strHtml$arrMatches);
                
    $strBase Environment::getInstance()->base;

                
    // Embed internal images
                
    foreach (array_unique($arrMatches[1]) as $url)
                {
                    
    // Try to remove the base URL
                    
    $src str_replace($strBase''$url);

                    
    // Embed the image if the URL is now relative
                    
    if (!preg_match('@^https?://@'$src) && file_exists($this->strImageDir $src))
                    {
                        
    $cid $this->objMessage->embed(Swift_EmbeddedFile::fromPath($this->strImageDir $src));
                        
    $this->strHtml str_replace('src="' $url '"''src="' $cid '"'$this->strHtml);
                    }
                }

                
    $this->objMessage->setBody($this->strHtml'text/html');
            } 

  2. #2
    Contao Core-Team
    Association Vorstand
    Avatar von andreas.schempp
    Registriert seit
    15.06.2009.
    Ort
    Lyss
    Beiträge
    5.614
    Partner-ID
    8667
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Warum gibst du im Quelltext nicht einfach eine absolute URL zu deiner Installation an? Dann müsste das Bild doch automatisch eingebunden werden?
    terminal42 gmbh
    Wir sind Contao Premium-Partner! Für Modulwünsche oder Programmierungen kannst du uns gerne kontaktieren.
    Hilfe für Isotope eCommerce kann man auch kaufen: Isotope Circle

  3. #3
    Contao-Fan Avatar von Schlauchbeutelmaschine
    Registriert seit
    16.06.2009.
    Ort
    Wiesbaden
    Beiträge
    668

    Standard

    Hallo Andreas,

    genauso mache ich das jetzt auch, aber viele E-Mail Programme zeigen das Bild dann nicht direkt an, weil es ein Sicherheitsrisiko darstellt.

    Um das zu verhinden möchte ich es direkt in die E-Mail integrieren und hoffe das ich mit dem Code-Beispiel aus der E-Mail Klasse richtig liege.

  4. #4
    Contao Core-Team
    Association Vorstand
    Avatar von andreas.schempp
    Registriert seit
    15.06.2009.
    Ort
    Lyss
    Beiträge
    5.614
    Partner-ID
    8667
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Ich dachte das Bild wird eingebettet wenn der Pfad absolut ist (entsprechend dem Code)? Oder probier's mit einem relativen Link, was passiert dann?
    terminal42 gmbh
    Wir sind Contao Premium-Partner! Für Modulwünsche oder Programmierungen kannst du uns gerne kontaktieren.
    Hilfe für Isotope eCommerce kann man auch kaufen: Isotope Circle

  5. #5
    Contao-Fan Avatar von Schlauchbeutelmaschine
    Registriert seit
    16.06.2009.
    Ort
    Wiesbaden
    Beiträge
    668

    Standard

    Nein leider nicht, es wird nicht integriert.

    Ich werde jetzt nochmal ein wenig rumprobieren.

    Danke schonmal für deine Hilfe!

  6. #6
    Contao-Urgestein Avatar von do_while
    Registriert seit
    15.06.2009.
    Ort
    Berlin | Deutschland
    Beiträge
    3.614
    Partner-ID
    1081
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hallo Schlauchbeutelmaschine,

    schau Dir doch mal die Versendung vom Newsletter-Modul an, dort kannst Du Attachements mit versenden. Im Pronzip läuft das so ab:
    PHP-Code:
    $arrAttachments[] = $file;
    $objEmail $this->generateEmailObject($objNewsletter$arrAttachments);
    $this->sendNewsletter($objEmail$objNewsletter$arrRecipient$text$html$css); 
    Die eingebundenen Attachments können auch Bilder aus dem Newslettertext sein.

  7. #7
    Contao-Fan Avatar von Schlauchbeutelmaschine
    Registriert seit
    16.06.2009.
    Ort
    Wiesbaden
    Beiträge
    668

    Standard

    Hallo Hagen,

    danke für den Tipp, genau daher habe ich auch meine Infos und bin dann letztendlich bei der E-Mail Libary gelandet. Sobald ich noch ein paar Infos habe wie es klappt werde ich es hier posten.

    Grüße Sabri

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Ähnliche Themen

  1. Oxid eSales in Contao integrieren?
    Von eaglehood im Forum Was kann Contao?
    Antworten: 2
    Letzter Beitrag: 18.09.2011, 16:35
  2. contao in one.com integrieren
    Von PKM im Forum Erfahrungen mit Webhostern
    Antworten: 21
    Letzter Beitrag: 08.01.2011, 13:54
  3. Contao in statische html Seite integrieren
    Von chocolat im Forum Was kann Contao?
    Antworten: 6
    Letzter Beitrag: 13.09.2010, 07:25
  4. AudioPlay - MP3 play in Contao integrieren
    Von Costaaar im Forum Allgemeine Inhaltselemente
    Antworten: 5
    Letzter Beitrag: 11.08.2010, 14:15
  5. dem Bild selbst eine klasse zuweisen ?
    Von ways2web im Forum "...4ward"
    Antworten: 9
    Letzter Beitrag: 15.04.2010, 14:37

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •