Jump to content

Kategorie v emailu (Prestashop 1.6)


sw4all

Recommended Posts

Ahoj všem.

Nevíte někdo jak dostat sloupec s názvem kategorie k vybranému a objednanému produktu ?

Určitě by to pomohlo mnoha prestařům v lepší orientaci v dohledávání zboží ve skladech řazených dle kategorie.

Obdobné téma jsem nalezl zde, ale pro Prestu 1.6 nefunkční.

http://www.prestashop.com/forums/topic/154741-category-name-in-order-email-and-invoice/

 

Moji představu přikládám v obrázku.

 

Děkuji všem za případné návrhy.

 

kategorie.png

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

O návodu přímo pro to nevím, mohu dát jen obecnou radu...

V mailalerts.php ve funkci public function hookActionValidateOrder($params) je třeba zavolat novou kategorii pro tenhle produkt a následně jako proměnou zobrazit její jméno. Bohužel není v mých časových možnostech nyní udělat celou změnu zdarma, odzkoušet to a hodit Vám výsledek - možná se ale najde někdo jiný...

Link to comment
Share on other sites

  • 2 weeks later...

Postup pro Prestashop 1.6.
Otevřít a modifikovat tři soubory:
A. www/modules/mailalerts/mailalerts.php
B .www/themes/vaše téma/modules/mailalerts/mailalerts.php
C. www/themes/vaše téma/modules/mailalerts/mails/cs/new_order.html
 
1. otevřete soubory A. a B. =>> najděte řádek :

$items_table .=
				'<tr style="background-color:'.($key % 2 ? '#DDE2E6' : '#EBECEE').';">
					<td style="padding:0.6em 0.4em;">'.$product['product_reference'].'</td>

 
2. doplňte v souboru A. a B., popř. zaměňte následující:

/* Přidána možnost kategorie v emailu *// 
      $category = new Category($product['id_category_default'], $id_lang);

			$items_table .=
				'<tr style="background-color:'.($key % 2 ? '#DDE2E6' : '#EBECEE').';">
					<td style="padding:0.6em 0.4em;">'.$product['product_reference'].'</td>
          <td style="padding:0.6em 0.4em;">'.$category->name.'</td>

3. uložte na výše uvedená místa A. a B.
 
  
4. otevřete soubor C.  =>> najděte řádek:

<table class="table table-recap" style="width: 100%; border-collapse: collapse;" bgcolor="#ffffff"><!-- Title -->
<thead>
<tr>
..
..
..
</tr>
</thead>

 
  
5. doplňte v souboru C., popř. zaměňte následující:

<table class="table table-recap" style="width: 100%; border-collapse: collapse;" bgcolor="#ffffff"><!-- Title -->
<thead>
<tr>
<th style="border: 1px solid #D6D4D4; background-color: #fbfbfb; font-family: Arial; color: #333; font-size: 13px; padding: 10px;">Kód</th>
<th style="border: 1px solid #D6D4D4; background-color: #fbfbfb; font-family: Arial; color: #333; font-size: 13px; padding: 10px;">Kategorie</th>
<th style="border: 1px solid #D6D4D4; background-color: #fbfbfb; font-family: Arial; color: #333; font-size: 13px; padding: 10px;">Název</th>
<th style="border: 1px solid #D6D4D4; background-color: #fbfbfb; font-family: Arial; color: #333; font-size: 13px; padding: 10px;">Jedn. cena</th>
<th style="border: 1px solid #D6D4D4; background-color: #fbfbfb; font-family: Arial; color: #333; font-size: 13px; padding: 10px;">Počet</th>
<th style="border: 1px solid #D6D4D4; background-color: #fbfbfb; font-family: Arial; color: #333; font-size: 13px; padding: 10px;">Celková cena</th>
</tr>
</thead>

6. uložte na výše uvedené místo C.
 
 
 
Věřím, že to mnohým pomůže.

Ohodnoťte příspěvek LIKE .

 

Výsledek jako na obrázku:

email0.png

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

Pokud chcete mít  i klikací odkaz v názvu produktu v Prestashopu 1.6 změňte jak výše uvedeno v souborech mailalerts.php následující řádky:

   //* Přidána možnost kategorie v emailu *// 
      $category = new Category($product['id_category_default'], $id_lang);
      
  //* Přidána možnost klikacího odkazu produktu *//
    $urlcategory = Db::getInstance()->getValue("SELECT link_rewrite FROM "._DB_PREFIX_."product p, "._DB_PREFIX_."category_lang l WHERE l.id_category=p.id_category_default AND id_lang='".(int)($id_lang)."' AND p.id_product='".$product['product_id']."'");
      define('_PS_BASE_URL_', Tools::getShopDomain(true));

			$items_table .=
				'<tr style="background-color:'.($key % 2 ? '#DDE2E6' : '#EBECEE').';">
					<td style="padding:0.6em 0.4em;">'.$product['product_reference'].'</td>
          <td style="padding:0.6em 0.4em;">'.$category->name.'</td>
					<td style="padding:0.6em 0.4em;"><a href="'._PS_BASE_URL_.__PS_BASE_URI__.$urlcategory.'/'.$product['product_id'].'-snoep.html">
          <strong>
          '.$product['product_name'].(isset($product['attributes_small']) ? ' '.$product['attributes_small'] : '').(!empty($customizationText) ? '<br />
          '.$customizationText : '').'
          </strong>
          </a>
          </td>
			<td style="padding:0.6em 0.4em; text-align:right;">'.Tools::displayPrice($unit_price, $currency, false).'</td>

Výsledek jako na obrázku:email1.png

​Ohodnoťte příspěvek LIKE .

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

Ještě bych byl moc rád, kdyby mi někdo pomohl dostat i podkategorii do emailu, pokud samozřejmě existuje.

Zatím se zobrazuje pouze hlavní kategorie. Zkouším co se dá a nemůžu na to přijít.

Předem děkuji.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...