Jump to content

[Darmowe] Szablony wiadomości e-mail dla PrestaShop 1.5.4.1


Recommended Posts

Jeszcze nie testowałem, ale z samego wyglądu widać, że porządna robota :).

Na pewno wszystkim się przyda.

Proponuję to dodać do oficjalnej polskiej paczki z tłumaczeniem.

 

Cześć, a jak to się będzie miało do 1.5.2 ?

Lepiej zaktualizuj do najnowszej Presty, bo mnóstwo błędów po drodze poprawili. Najnowsza Presta jest o wiele stabilniejsza i mniej problematyczna. W zasadzie dopiero ta wersja jest używalna :).

Link to comment
Share on other sites

Patrzyłem jak jest w wersji 1.5.4.1, ale nie testowałem. Faktycznie wygląda na to, że zmiennej {id_order} nie ma zdefiniowanej dla szablonu order_conf (plik /classes/PaymentModule.php od lini 558). Musiałbyś nadpisać funkcję (override) i dodać sobie do tablicy $data

'{id_order}' => $order->reference,

Edited by Piotr Kaczor (see edit history)
Link to comment
Share on other sites

Patrzyłem jak jest w wersji 1.5.4.1, ale nie testowałem. Faktycznie wygląda na to, że zmiennej {id_order} nie ma zdefiniowanej dla szablonu order_conf (plik /classes/PaymentModule.php od lini 558). Musiałbyś nadpisać funkcję (override) i dodać sobie do tablicy $data

'{id_order}' => $order->reference,

 

znalazłem tam coś takiego:

'{order_name}' => $order->getUniqReference(),

 

to chyba lepiej dodać :

'{id_order}' => $order->getUniqReference(),

 

czy się mylę ?

Link to comment
Share on other sites

znalazłem tam coś takiego:

'{order_name}' => $order->getUniqReference(),

 

to chyba lepiej dodać :

'{id_order}' => $order->getUniqReference(),

 

czy się mylę ?

 

Wydaje mi się, że wtedy wrócisz do identyfikatora QWERTYU który jest w oryginalnych szablonach.

  • Like 2
Link to comment
Share on other sites

Patrzyłem jak jest w wersji 1.5.4.1, ale nie testowałem. Faktycznie wygląda na to, że zmiennej {id_order} nie ma zdefiniowanej dla szablonu order_conf (plik /classes/PaymentModule.php od lini 558). Musiałbyś nadpisać funkcję (override) i dodać sobie do tablicy $data

'{id_order}' => $order->reference,

 

wiesz co to rozwiązanie wyświetliło mi w emailu numer referencyjny.

zmieniłem na

'{id_order}' => $order->id,

 

i teraz dopeiro wyświetla numer zamówienia normalnie :)

Link to comment
Share on other sites

Miałem mega problem ze standardowymi mejlami - tabele były pozagnieżdżane w złych miejscach, linki prowadziły do złych miejsc i cała kolorystyka była chaotycznie niespójna. Wrzuciłem dla testu te powyżej i niezły szok - prawie wszystko działa i wygląda merytorycznie ok.

 

Świetna robota!

Link to comment
Share on other sites

  • 4 weeks later...

Witam,

Z powodzeniem używam tych szablonów na 2 sklepach, w sensie zainstalowałem to klientom :).

Dziś zauważyłem dosyć istotny błąd tłumaczenia w plikach:

preparation.txt i prepararion.html

 

Tam jest napisane np.

Przystąpiliśmy do realizacji Twojego zamówienia {order_name}

.

Wg mnie to wprowadza w błąd, gdyż jak ten e-mail jest wysyłany, to zamówienie ma status: oczekujące.

Oznacza to tyle, że poprawnie dodało się na zaplecze, ale nic więcej.

Zamówienie przecież wcale nie musi być realizowane w tym momencie. Nawet nie oznacza, że jest ono realizowane.

Edited by bronit (see edit history)
Link to comment
Share on other sites

Cześć

 

75ye.png

 

Standardowo ten e-mail jest wysyłany w momencie zmiany na status Przygotowanie w toku (ten status chyba powinno się ustawiać po tym jak wpłyną pieniądze), co niby ma oznaczać, "zabieramy się za pakowanie towaru w kartony" (wcześniej nie było jeszcze pieniędzy od klienta więc nic z zamówieniem się nie działo), następny e-mail to wiadomość o wysyłce i numer jej śledzenia.

Tak rozumując treść Przystąpiliśmy do realizacji Twojego zamówienia wydaje się być w porządku.

Czy powinna być inna kolejność nadawania statusów zamówieniom?

Edited by Piotr Kaczor (see edit history)
Link to comment
Share on other sites

  • 3 weeks later...

Dzięki dobre rozwiązanie!

 

Ja osobiście pozmniejszałem tylko czcionkę...

 

Zastanawiam się też jeszcze nad tym czy potwierdzenia do Sprzedającego oraz do Kupującego nie powinny być takie same

Myślę też, że najlepiej by było gdyby maile miały tabelę taką jak jest w Fakturze Proforma (ceny netto i brutto, razem Vat.itp)

Co o tym myślicie ?

Edited by waldwap (see edit history)
Link to comment
Share on other sites

  • 4 weeks later...
  • 2 weeks later...

Wpisywalem tak ale w kodzie PHP bylo odwrotnie... tam gdzie byl "numer konta" mialem {shop_owner} bodajze... juz sobie poradzilem ale mowie... nie bylo tak jak powinno... a zamiast loga u mnie wyswietla sie duzymi literami tytul strony... no idea jak to naprawic ;q

Link to comment
Share on other sites

Cześć

 

Przygotowałem paczkę wiadomości e-mail dla PrestaShop 1.5.4.1 i udostępniam ją forumowiczom za darmo. Wystarczy pobrać załączony plik i po wypakowaniu skopiować foldery mails i modules do katalogu z używanym themem. 

Jaki moduł?

Jeśli chodzi Ci o te tłumaczenia, to nie jest moduł.

W pierwszym poście Piotr napisał jak je wgrać ^_^

Link to comment
Share on other sites

dzięki za paczuszkę, wszystko działa pięknie.

Mam tylko jedno pytanie - jak dodać numer telefonu do maila z modułu mailalerts?

Chodzi o to że wypisując np. list przewozowy nie trzeba by logować się do panelu admina, miałbym wszystkie informacje w mailu z zamówieniem....

Link to comment
Share on other sites

Po aktualizacji  do 1.5.6 mam taki oto błąd. 

"A message that you sent contained one or more recipient addresses that were

incorrectly constructed:

[email protected] <sklep@domena.pl>: malformed address: <sklep@domena.pl> may not follow sklep@domena.pl

This address has been ignored. There were no other addresses in your
message, and so no attempt at delivery was possible.

"
 
Wiadomość ta pojawia się w mailu po zakupie tzn. do skrzynki sklepu zamiast tradycyjnego maila przychodzi błąd. Nie wiem czy to ma związek z paczką pobraną stad
Link to comment
Share on other sites

Piotrze świetna robota, jednakże mam mały problem.

 

Kiedy klient dostaje maila z potwierdzeniem wysyłki i śledzenia przesyłki - w moim przypadku DHL - z linkiem http://dhl/sledzenie-przesylki-krajowej/asp@      - dla przykładu podałem

To wszystko jest ok, klika się w przycisk "przejdź do śledzenia przesyłki" i pokazuje na stronie od razu gdzie jest wysyłka.

 

Natomiast gdy ten sam myk zastosowałem do przesyłek Poczty Polskiej - url śledzenia
http://sledzenie.poczta-polska.pl/?numer=@

 

i podam pełny numer przesyłki (może za długi jest) to klient dostaje meila z przyciskiem przejdź na stronę śledzenia przesyłki ale po kliknięciu wyskakuje mi w innej (co ciekawe niż domyślnej) przeglądarce takie coś:

 

   res :  //ieframe.dll/syntax.html#          to wyskakujew oknie przeglądarki IE
 

Adres jest nieprawidłowy     Najbardziej prawdopodobne przyczyny:

  • W adresie może być błąd w pisowni.
  • Jeśli zostało kliknięte łącze, może ono być nieaktualne.

   

 

czyli nie mogę śledzić przesyłki.

Kiedy wbiję ręcznie ulr śledzenie z numerem przesyłki http://sledzenie.poczta-polska.pl/?numer=002555002222itditd   

to wszystko jest ok i mam podgląd na śledzenie przesyłki.

 

Co może być przyczyną takiego stanu rzeczy??? Zbyt długi nr przesyłki czy fakt, że przesyłki Poczty zaczynają się od 00...???

 

Z góry dziękuję za wszelkie podpowiedzi! Wersja Prestashop 1.5.5.0

Edited by sympatic (see edit history)
Link to comment
Share on other sites

  • 3 weeks later...

Wrzuciłam pierwszy raz paczkę do złych katalogów na serwerze. Potem wrzuciłam już do dobrych, zrobilam próbną rejestrację użytkownika i zamówienie ale nie dostałam żadnego e-maila.
Mam włączony moduł powiadomień e-mail.
W zaawansowanych/ e-mail wysłałam wiadomość testową (mam konto na gmailu), otrzymuje komunikat "Wiadomość testowa została wysłana pod podany przez Ciebie adres e-mail" ale nic do mnie nie dochodzi.
Spróbowałam użyć SMTP ale wtedy mail się nie chciał wysłac.

Czy mogłam tym, że wrzuciłam paczkę nie do tych katalogów zepsuć w ogóle wysyłanie maili?
Gdzie wejść w ustawienia jak pokazane na zalączniku w 23 poście autorstwa Piotra?
 

Link to comment
Share on other sites

Czy mogłam tym, że wrzuciłam paczkę nie do tych katalogów zepsuć w ogóle wysyłanie maili?

Gdzie wejść w ustawienia jak pokazane na zalączniku w 23 poście autorstwa Piotra?

 

 

a czy domena Twojego maila zgadza się z domeną sklepu?

jeżeli nie, maile są blokowane z uwagi na tzw. SPF

Link to comment
Share on other sites

Witaj Piotrze,

Bardzo pomocna paczka. Jakimś sposobem bym na Twoim miejscu podesłał to deweloperom niech to zintegrują w oficjalnej paczce bo to co jest z defaulta to jest kaszana!

 

Pytanie mam jedno: gdzie dobrać się można do {products} czyli tabelki z produktami zamówionymi, aby zmienić formatowanie tego pogrubionego tekstu?

Link to comment
Share on other sites

a czy domena Twojego maila zgadza się z domeną sklepu?

jeżeli nie, maile są blokowane z uwagi na tzw. SPF

Bardzo Ci dziękuję, że zwróciłeś mi na to uwagę. Zmieniłam maile na zgodne i testowy przyszedł.

 

A także zrobiłam próbne zamówienie i wszystko działa! :)

Link to comment
Share on other sites

Witaj Piotrze,

Bardzo pomocna paczka. Jakimś sposobem bym na Twoim miejscu podesłał to deweloperom niech to zintegrują w oficjalnej paczce bo to co jest z defaulta to jest kaszana!

 

Pytanie mam jedno: gdzie dobrać się można do {products} czyli tabelki z produktami zamówionymi, aby zmienić formatowanie tego pogrubionego tekstu?

 

Odpowiedziałem sobie na pytanie sam ;)

Zatem jeśli drażnią Was pogrubione nazwy produktów w podsumowaniu zamówienia w szablonie order_conf (tak jak mnie)

to należy zająć się plikiem classes/PaymentModule.php

// Construct order detail table for the email
					$products_list = '';
					$virtual_product = true;

					foreach ($order->product_list as $key => $product)
					{
						$price = Product::getPriceStatic((int)$product['id_product'], false, ($product['id_product_attribute'] ? (int)$product['id_product_attribute'] : null), 6, null, false, true, $product['cart_quantity'], false, (int)$order->id_customer, (int)$order->id_cart, (int)$order->{Configuration::get('PS_TAX_ADDRESS_TYPE')});
						$price_wt = Product::getPriceStatic((int)$product['id_product'], true, ($product['id_product_attribute'] ? (int)$product['id_product_attribute'] : null), 2, null, false, true, $product['cart_quantity'], false, (int)$order->id_customer, (int)$order->id_cart, (int)$order->{Configuration::get('PS_TAX_ADDRESS_TYPE')});

						$customization_quantity = 0;
						$customized_datas = Product::getAllCustomizedDatas((int)$order->id_cart);
						if (isset($customized_datas[$product['id_product']][$product['id_product_attribute']]))
						{
							$customization_text = '';
							foreach ($customized_datas[$product['id_product']][$product['id_product_attribute']][$order->id_address_delivery] as $customization)
							{
								if (isset($customization['datas'][Product::CUSTOMIZE_TEXTFIELD]))
									foreach ($customization['datas'][Product::CUSTOMIZE_TEXTFIELD] as $text)
										$customization_text .= $text['name'].': '.$text['value'].'<br />';

								if (isset($customization['datas'][Product::CUSTOMIZE_FILE]))
									$customization_text .= sprintf(Tools::displayError('%d image(s)'), count($customization['datas'][Product::CUSTOMIZE_FILE])).'<br />';
								$customization_text .= '---<br />';
							}
							$customization_text = rtrim($customization_text, '---<br />');

							$customization_quantity = (int)$product['customization_quantity'];
							$products_list .=
							'<tr style="background-color: '.($key % 2 ? '#DDE2E6' : '#EBECEE').';">
								<td style="padding: 0.6em 0.4em;width: 15%;">'.$product['reference'].'</td>
								<td style="padding: 0.6em 0.4em;width: 30%;"><strong>'.$product['name'].(isset($product['attributes']) ? ' - '.$product['attributes'] : '').' - '.Tools::displayError('Customized').(!empty($customization_text) ? ' - '.$customization_text : '').'</strong></td>
								<td style="padding: 0.6em 0.4em; width: 20%;">'.Tools::displayPrice(Product::getTaxCalculationMethod() == PS_TAX_EXC ?  Tools::ps_round($price, 2) : $price_wt, $this->context->currency, false).'</td>
								<td style="padding: 0.6em 0.4em; width: 15%;">'.$customization_quantity.'</td>
								<td style="padding: 0.6em 0.4em; width: 20%;">'.Tools::displayPrice($customization_quantity * (Product::getTaxCalculationMethod() == PS_TAX_EXC ? Tools::ps_round($price, 2) : $price_wt), $this->context->currency, false).'</td>
							</tr>';
						}

						if (!$customization_quantity || (int)$product['cart_quantity'] > $customization_quantity)
							$products_list .=
							'<tr style="background-color: '.($key % 2 ? '#DDE2E6' : '#EBECEE').';">
								<td style="padding: 0.6em 0.4em;width: 15%;">'.$product['reference'].'</td>
								<td style="padding: 0.6em 0.4em;width: 30%;"><strong>'.$product['name'].(isset($product['attributes']) ? ' - '.$product['attributes'] : '').'</strong></td>
								<td style="padding: 0.6em 0.4em; width: 20%;">'.Tools::displayPrice(Product::getTaxCalculationMethod((int)$this->context->customer->id) == PS_TAX_EXC ? Tools::ps_round($price, 2) : $price_wt, $this->context->currency, false).'</td>
								<td style="padding: 0.6em 0.4em; width: 15%;">'.((int)$product['cart_quantity'] - $customization_quantity).'</td>
								<td style="padding: 0.6em 0.4em; width: 20%;">'.Tools::displayPrice(((int)$product['cart_quantity'] - $customization_quantity) * (Product::getTaxCalculationMethod() == PS_TAX_EXC ? Tools::ps_round($price, 2) : $price_wt), $this->context->currency, false).'</td>
							</tr>';

						// Check if is not a virutal product for the displaying of shipping
						if (!$product['is_virtual'])
							$virtual_product &= false;

					} // end foreach ($products)
  • Like 1
Link to comment
Share on other sites

Hi Piotr Kaczor,i like your email templates.but do you have it in english?

 

 

 

Regards

Ps3z

 

Hi ps3z,

 

Please consider to join and contribute with english translation of this email templates!

 

Witaj ps3z,

Rozważ przyłączenie się do projektu angielskiego tłumaczenia tego szablonu emaili!

Link to comment
Share on other sites

Hi ps3z,

 

Please consider to join and contribute with english translation of this email templates!

 

Witaj ps3z,

Rozważ przyłączenie się do projektu angielskiego tłumaczenia tego szablonu emaili!

hi kisweb i would to translate it in my free times.that will be so nice!

 

 

Greetings

Ps3z

  • Like 2
Link to comment
Share on other sites

Operację kopiowania dokonuję poprzez Total Commandera i FileZilla. Kopiowanie/zastępowanie plików poprzez klienta FTP to chyba nie chmod? Tak czy inaczej i do tej operacji nie mam uprawnień.. Choć w innych folderach sklepu bądź innych moich stron wszystko jest po staremu. Nie wiem czy to ma jakieś znaczenie ale nigdy nic takiego mi się nie pojawiło do czasu gdy poprosiłem Administratora serwera by wyłączył mi magic quotes

Link to comment
Share on other sites

Witam,

Zadam pytanie tu, gdyż większość się zna na email-ach.

Używam " Mail Template Editor "

Zmieniłem wszystko tak jak chciałem ale na jednym email (którego nie mam do edycji) Przekształcenie konta gość na klient .

Wyskakuje mi " Votre compte invité a été transformé en compte client " w email jednym.

Czy mogę to  " gdzieś " i gdzie ? ręcznie zmienić ?

 

Pozdrawiam

Link to comment
Share on other sites

  • 2 weeks later...

Witam,

Zadam pytanie tu, gdyż większość się zna na email-ach.

Używam " Mail Template Editor "

Zmieniłem wszystko tak jak chciałem ale na jednym email (którego nie mam do edycji) Przekształcenie konta gość na klient .

Wyskakuje mi " Votre compte invité a été transformé en compte client " w email jednym.

Czy mogę to  " gdzieś " i gdzie ? ręcznie zmienić ?

 

Pozdrawiam

 

/mails/pl/guest_to_customer.html

Link to comment
Share on other sites

  • 2 months later...

Świetna paczka, bardzo przydatna. Mam jednak mały problem, mianowicie jeden mail przychodzi z tytułem po angielsku - Preparation in progress. Czy ktoś wie jak to zmienić?

Dzięki wielkie.

 

EDIT: Wygłupiłem się, wystarczyło przetłumaczyć statusy zamówień na polski ;)

Edited by snoopek (see edit history)
Link to comment
Share on other sites

Witaj,

Właśnie dobrze trafiłeś. Podstawowe szablony email są spierniczone na maksa. Dzięki Piotrowi w pierwszym poście tego tematu znajdziesz paczkę szablonów. Wrzucasz je to odpowiednich katalogów na serwerze np mails/pl i cieszysz się pięknymi powiadomieniami :)

Link to comment
Share on other sites

  • 2 weeks later...

Mam dwa pytania:

 

1. W wersji 1.5.6.2 w dochodzących mailach nie wyświetla się logo, co może być tego przyczyną?

 

2. Nie mogę sobie poradzić z tematem maila do właściciela sklepu o nadejściu nowego zamówienia. Wszystkie inne wiadomości przychodzą z poprawnymi polskimi tematami, a ten jeden ciągle ma w tytule: 

 

[Nazwa sklepu] New order : #xxxx - Numer Edited by robertpol (see edit history)
Link to comment
Share on other sites

WItam, mam taki problem z powiadomieniami.

Kiedy klient wybierzez metode płatności "przelewy24.pl" i potwierdzi zamówienie dostaje dwie wiadomości. jedną z podsumowaniem zamówienia oraz drugą o oczekiwaniu na płatność. Ta druga jest chyba skopana bo przedstawia się tak:

 

Twoje zamówienie zostało złożone i zrealizujemy je gdy tylko otrzymamy od Ciebie zapłatę.

Wybrano czek jako metodę płatności. Wyślij go na poniższy adres:


Z tytułu:
Zamówienie NDICLMAJE

 

 

kleint nie wybrał opcji czek tylko przelewy... wiecie może gdzie to poprawić, bo przejrzałem wszystkie pliki z tresciami maili i nie znalazłem żadnego który pasuje do tego opisu

Link to comment
Share on other sites

Hej. Trzeba stworzyć nowy status powiadomień i przypisać do niego szablon (przerobiony np czekowy z paczki Piotra)
Potem aby to śmigało należy zmodyfikować pliki modułu płatności tak aby potwierdzenie płatności równało się ID nowego statusu powiadomień.

Link to comment
Share on other sites

kleint nie wybrał opcji czek tylko przelewy... wiecie może gdzie to poprawić, bo przejrzałem wszystkie pliki z tresciami maili i nie znalazłem żadnego który pasuje do tego opisu

To jest szablon "cheque" - treść możesz edytować przez tłumaczenia w panelu lub bezpośrednio w pliku przez ftp - folder: mails/pl

Ps. ten mail sklep wysyła klientowi tylko w przypadku błędnego zamówienia przez Przelewy24 (w przypadku prawidłowej płatności - nie). Więc możesz zmienić treść tego mail-a na np. "dokonałeś błędnej płatności - ponów zamówienie" lub coś w tym stylu. Ten szablon praktycznie nie jest wykorzystywany w sklepie do innych celów  ^_^ więc problemu nie będzie.

Edited by PMaster (see edit history)
  • Like 1
Link to comment
Share on other sites

No to teraz mam wątpliwość. Nie uważacie, że coś tutaj jest nie tak? Skoro klient wybrał płatność "przelewy24.pl" to powinien dostac maila z szblony "payment", a nie "cheque"

 

Zastanawiam się też dlaczego jest tutaj błąd ponieważ przed zmianą maili było poprawnie.

 

Ps. ten mail sklep wysyła klientowi tylko w przypadku błędnego zamówienia przez Przelewy24 (w przypadku prawidłowej płatności - nie). Więc możesz zmienić treść tego mail-a na np. "dokonałeś błędnej płatności - ponów zamówienie" lub coś w tym stylu. Ten szablon praktycznie nie jest wykorzystywany w sklepie do innych celów   ^_^ więc problemu nie będzie.

 

 

Dzieki, to wiele wyjaśnia :)

Edited by MSLED (see edit history)
Link to comment
Share on other sites

No to teraz mam wątpliwość. Nie uważacie, że coś tutaj jest nie tak? Skoro klient wybrał płatność "przelewy24.pl" to powinien dostac maila z szblony "payment", a nie "cheque"

 

Zastanawiam się też dlaczego jest tutaj błąd ponieważ przed zmianą maili było poprawnie.

 

 

Dzieki, to wiele wyjaśnia :)

Być może nie trafił Ci się przypadek błędnej płatności wcześniej w przelewach24 - błąd występuje od początku wersji 1.5, bez względu na szablony.

Link to comment
Share on other sites

To jest szablon "cheque" - treść możesz edytować przez tłumaczenia w panelu lub bezpośrednio w pliku przez ftp - folder: mails/pl

 

+1, Racja. Można i tak w najprostszy możliwy sposób

Chodzi o to że Moduł Przelewy24 ma dopisane ID powiadomienia o płatności czekiem. Czyli ID 1

 

pay_send.php

$id_order = $o_przelewy24->validateOrder((int)$i_id_order, 1, $kwota, 'przelewy24.pl', NULL, array(), NULL, false, $customer->secure_key);
Edited by kisweb (see edit history)
Link to comment
Share on other sites