mail a obrazky z ruznych slozek
- iguana007
- Člen | 970
No kdyby myslel jako prilohu, tak se nejspis nepta :)
Predpokladam, ze se ptas na metodu vkladani obrazku primo do textu/template
emailu, pricemz u metody setHtmlBody je moznost definice pouze jedne cesty (https://api.nette.org/…age.php.html#…).
Pro tyto pripady je tam pak dalsi metoda, ktera ti umoznuje definovat cesty k tem obrazkum separatne:
$mail->addEmbeddedFile('background.gif')
Vice zde: https://doc.nette.org/cs/mail
a zde: https://api.nette.org/…age.php.html#…
- Alsatian
- Člen | 175
Ahoj. Jak, prosím, v šabloně zobrazit obrázek vložený addEmbeddedFile()?
V presenteru nastavím vkládání obrázků třeba ze složky „images“,
kde jejich vykreslování v latte chápu a funguje na výbornou. V podstatě
už neuvádím cestu images, ale jenom názvy obrázků.
Email sestavuji takto:
$email-> ... ->setHtmlBody($mojeSablonka, 'images');
Nyní bych ale rád přiložil jeden obrázek z jiného adresáře. Chápu snad správně takto:
$mail->addEmbeddedFile('images2/nazevobrazku.png');
Zobrazit v latte už jej ale neumím. Zde mám zatím následující kód. V PHP bych jej zobrazil pomocí cid:nazevObrazku, který si předem nadefinuji.
<img src="obrazek-ze-slozky-images.png">
<img src="???">
Předem děkuji :)
Editoval Alsatian (19. 5. 2018 11:47)
- esorimer
- Člen | 114
Je to velice jednoduché a intuitivní:
<?php
$cid = $email->addEmbeddedFile('images2/nazevobrazku.png')->->getHeader('Content-ID');
$mojeSablonka->nazevobrazkuCid = substr($cid,1,-1);
$email->setHtmlBody($mojeSablonka);
?>
A pak v šabloně:
<img src="cid:{$nazevobrazkuCid}" />