Добрый день!
Можно ли настроить так, чтоб в письме клиенту, были не просто текстовые названия товаров, а возможность перейти по ссылке на данный купленный или зарезервированный товар?
Добрый день!
Можно ли настроить так, чтоб в письме клиенту, были не просто текстовые названия товаров, а возможность перейти по ссылке на данный купленный или зарезервированный товар?
Вы используете новый редактор писем?
Тоже актуальный вопрос.
Редактор писем - новый
При редактировании Таблицы товаров в Описании переведите wysiwyg в режим исходного кода и замените
{{ p.name }}
на
{{ p.name }}
При редактировании Таблицы товаров в Описании переведите wysiwyg в режим исходного кода и замените
{{ p.name }}на
{{ p.name }}
Заменил. Что-то не работает - в письме ссылки нет.
А превью если сделать, есть?
А превью если сделать, есть?
Да, на предпросмотре работает.
Да, на предпросмотре работает.
Странно. Я думал, что там одно содержимое используется. Надо изучать детально
Содержимое одно. Данные разные.
На превью мы берем первый попавшийся заказ.
Должна работать ссылка, нужно глянуть исходный кодм полученного письма, и кеш почистить на всякий пожарный.
Вы используете новый редактор писем?
Как проверить, новый у меня редактор или нет? Версия 4.3.1, обновления не ставились
Содержимое одно. Данные разные.
На превью мы берем первый попавшийся заказ.
Должна работать ссылка, нужно глянуть исходный кодм полученного письма, и кеш почистить на всякий пожарный.
Кэш чистил.
Код в названии товара в письме такой:
Название товара
Как проверить, новый у меня редактор или нет? Версия 4.3.1, обновления не ставились
Новый появился в версии 4.4.1
http://www.cs-cart.ru/docs/4.4.x/user_guide/look_and_feel/email_templates/
Новый появился в версии 4.4.1
http://www.cs-cart.ru/docs/4.4.x/user_guide/look_and_feel/email_templates/
Нет, такого нет у меня. Значит старая версия.
В старой сложнее ссылку сделать на товар?
Нет, такого нет у меня. Значит старая версия.
В старой сложнее ссылку сделать на товар?
Легче. Письмо пользователю
design/themes/ТЕМА/mail/templates/orders/invoice.tpl
Письмо админу
design/backend/mail/templates/orders/invoice.tpl
Легче. Письмо пользователю
design/themes/ТЕМА/mail/templates/orders/invoice.tpl
Письмо админу
design/backend/mail/templates/orders/invoice.tpl
Данные шаблоны есть, но честно сказать, не очень понимаю, куда и какой код нужно добавить.
Шаблон письма пользователя:
{if $order_info}
{assign var="order_header" value=__("invoice")}{if $status_settings.appearance_type == "I" && $order_info.doc_ids[$status_settings.appearance_type]}{assign var="doc_id_text" value="{__("invoice")} #`$order_info.doc_ids[$status_settings.appearance_type]`"}{elseif $status_settings.appearance_type == "C" && $order_info.doc_ids[$status_settings.appearance_type]}{assign var="doc_id_text" value="{__("credit_memo")} #`$order_info.doc_ids[$status_settings.appearance_type]`"}{assign var="order_header" value=__("credit_memo")}{elseif $status_settings.appearance_type == "O"}{assign var="order_header" value=__("order_details")}{/if}
{$order_header|default:__("invoice_title")} {hook name="orders:invoice_company_info"}{/hook}{hook name="orders:invoice_order_status_info"}{/hook}
{$company_data.company_name}
{$company_data.company_city}{$company_data.company_address}{if $company_data.company_phone}{/if}{if $company_data.company_website}{/if}{if $company_data.company_orders_department}{/if}
{__("phone1_label")}: {$company_data.company_phone} {__("web_site")}: {$company_data.company_website} {__("email")}: {$company_data.company_orders_department|replace:",":"
"|replace:" ":"" nofilter}{if $doc_id_text}{$doc_id_text}
{/if}{__("order")} #{$order_info.order_id}{if $order_info.shipping}{if $tracking_number_exists && !$use_shipments}{/if}{/if}
{__("status")}: {$order_status.description} {__("payment_method")}: {$payment_method.payment|default:" - "} {__("shipping_method")}: {foreach from=$order_info.shipping item="shipping" name="f_shipp"}{$shipping.shipping}{if !$smarty.foreach.f_shipp.last}, {/if}{if $shipments[$shipping.group_key].tracking_number}{assign var="tracking_number_exists" value="Y"}{/if}{/foreach}{__("tracking_number")}: {foreach from=$order_info.shipping item="shipping" name="f_shipp"}{include file="common/carriers.tpl" carrier=$shipments[$shipping.group_key].carrier tracking_number=$shipments[$shipping.group_key].tracking_number}{if !empty($smarty.capture.carrier_url)}{else}{$shipments[$shipping.group_key].tracking_number}{/if}{$smarty.capture.carrier_info nofilter}{if !$smarty.foreach.f_shipp.last}, {/if}{/foreach}{hook name="orders:invoice_customer_info"}{if !$profile_fields}{assign var="profile_fields" value='I'|fn_get_profile_fields}{/if}{if $profile_fields}{if $profile_fields.C}{assign var="profields_c" value=$profile_fields.C|fn_fields_from_multi_level:"field_name":"field_id"}{/if}{if $profile_fields.B}{assign var="profields_b" value=$profile_fields.B|fn_fields_from_multi_level:"field_name":"field_id"}{/if}{if $profile_fields.S}{assign var="profields_s" value=$profile_fields.S|fn_fields_from_multi_level:"field_name":"field_id"}{/if}
{__("customer")}:
{if $profields_c.firstname}{$order_info.firstname} {/if}{if $profields_c.lastname}{$order_info.lastname}{/if}
{if $profields_c.email}{/if}{if $profields_c.phone}{__("phone")}: {$order_info.phone}
{/if}{if $profields_c.fax && $order_info.fax}{__("fax")}: {$order_info.fax}
{/if}{if $profields_c.company && $order_info.company}{__("company")}: {$order_info.company}
{/if}{if $profields_c.url && $order_info.url}{__("url")}: {$order_info.url}
{/if}{if $order_info.email}{$order_info.email}
{/if}{include file="profiles/profiles_extra_fields.tpl" fields=$profile_fields.C}{__("ship_to")}:
{if $order_info.s_firstname && $profields_s.s_firstname || $order_info.s_lastname && $profields_s.s_lastname}{if $profields_s.s_firstname}{$order_info.s_firstname} {/if}{if $profields_s.s_lastname}{$order_info.s_lastname}{/if}{/if}{if $order_info.s_address && $profields_s.s_address || $order_info.s_address_2 && $profields_s.s_address_2}{if $profields_s.s_address}{$order_info.s_address} {/if}{if $profields_s.s_address_2}
{$order_info.s_address_2}{/if}{/if}{if $order_info.s_city && $profields_s.s_city || $order_info.s_state_descr && $profields_s.s_state}{if $profields_s.s_city}{$order_info.s_city}{if $profields_s.s_state},{/if} {/if}{if $profields_s.s_state}{$order_info.s_state_descr} {/if}{/if}{if $order_info.s_phone && $profields_s.s_phone}{if $profields_s.s_phone}{$order_info.s_phone} {/if}{/if}{include file="profiles/profiles_extra_fields.tpl" fields=$profile_fields.S}{/if}{/hook}{* Customer info *}{* Ordered products *}{if $order_info.use_discount}{/if}{if $order_info.taxes && $settings.General.tax_calculation != "subtotal"}{/if}{foreach from=$order_info.products item="oi"}{hook name="orders:items_list_row"}{if !$oi.extra.parent}{if $order_info.use_discount}{/if}{if $order_info.taxes && $settings.General.tax_calculation != "subtotal"}{/if}{/if}{/hook}{/foreach}{hook name="orders:extra_list"}{/hook}
{__("product")} {__("quantity")} {__("unit_price")} {__("discount")} {__("tax")} {__("subtotal")} {$oi.product|default:__("deleted_product") nofilter}{hook name="orders:product_info"}{if $oi.product_code}{__("sku")}: {$oi.product_code}
{/if}{/hook}{if $oi.product_options}
{include file="common/options_info.tpl" product_options=$oi.product_options}{/if}{$oi.amount} {if $oi.extra.exclude_from_calculate}{__("free")}{else}{include file="common/price.tpl" value=$oi.original_price}{/if} {if $oi.extra.discount|floatval}{include file="common/price.tpl" value=$oi.extra.discount}{else} - {/if} {if $oi.tax_value}{include file="common/price.tpl" value=$oi.tax_value}{else} - {/if} {if $oi.extra.exclude_from_calculate}{__("free")}{else}{include file="common/price.tpl" value=$oi.display_subtotal}{/if} {hook name="orders:ordered_products"}{/hook}{* /Ordered products *}{* Order totals *}
{if $order_info.discount|floatval}{/if}{if $order_info.subtotal_discount|floatval}{/if}{if $order_info.coupons}{foreach from=$order_info.coupons item="coupon" key="key"}{/foreach}{/if}{if $order_info.taxes}{foreach from=$order_info.taxes item=tax_data}{/foreach}{/if}{if $order_info.tax_exempt == 'Y'}{/if}{if $order_info.payment_surcharge|floatval && !$take_surcharge_from_vendor}{/if}{if $order_info.shipping}{/if}{hook name="orders:totals"}{/hook}
{__("subtotal")}: {include file="common/price.tpl" value=$order_info.display_subtotal} {__("including_discount")}: {include file="common/price.tpl" value=$order_info.discount}{__("order_discount")}: {include file="common/price.tpl" value=$order_info.subtotal_discount}{__("coupon")}: {$key} {__("taxes")}: {$tax_data.description} {include file="common/modifier.tpl" mod_value=$tax_data.rate_value mod_type=$tax_data.rate_type}{if $tax_data.price_includes_tax == "Y" && ($settings.Appearance.cart_prices_w_taxes != "Y" || $settings.General.tax_calculation == "subtotal")} {__("included")}{/if}{if $tax_data.regnumber} ({$tax_data.regnumber}){/if}: {include file="common/price.tpl" value=$tax_data.tax_subtotal} {__("tax_exempt")} {$order_info.payment_method.surcharge_title|default:__("payment_surcharge")}: {include file="common/price.tpl" value=$order_info.payment_surcharge} {__("shipping_cost")}: {include file="common/price.tpl" value=$order_info.display_shipping_cost} {__("total_cost")}: {include file="common/price.tpl" value=$order_info.total} {* /Order totals *}{if $order_info.notes}
{__("customer_notes")}: {$order_info.notes|nl2br nofilter}{/if}{/if}{hook name="orders:invoice"}{/hook}
Данные шаблоны есть, но честно сказать, не очень понимаю, куда и какой код нужно добавить.
Шаблон письма пользователя:
Попробуйте поменять
{$oi.product|default:__("deleted_product") nofilter}
на
{$oi.product|default:__("deleted_product") nofilter}
Не забудьте кэш почистить
Попробуйте поменять
{$oi.product|default:__("deleted_product") nofilter}на
{$oi.product|default:__("deleted_product") nofilter}Не забудьте кэш почистить
Огромное спасибо! Всё именно так, как хотелось
Рады были помочь!
А как в инвойс добавить емайл покупателя?
А как в инвойс добавить емайл покупателя?
Опять же зависит от типа редактора
Для старого
{$order_info.email}
Для нового
{{ order_info.email }}