Как передать изображение в заказ (письмо)



  • Добрый день!

    У товара есть TV параметр "goods-image1". Добавил его в "savePurchasesFields".
    На странице оформления заказа, всё работает хорошо. Вывод делаю так:
    shopCartRow

    <tr class="cart-order">
        <td align="left">
    	<b><a href="[[+url]]"><img src="[[+goods-image1]]"/><br/>[[+name]]</a></b> 
    ***
    

    Но когда пытаюсь вывести изображение в тексте письма, в чанке orderDataRow,

    <tr class="cart-order">
        <td>
    		<img src="[[+goods-image1]]" width="150" height="150" alt="[[+name]]"/>
            <b>[[+name]]</b>
        </td>
    ***
    

    в письме приходит

    <img src="[[+goods-image1]]" width="150" height="150" alt="Товар1"/>
    

    Пробовал гуглить, читал документацию, искал по форуму. Проблему так и не удалось решить. Кто - нибудь знает, как можно передать в письмо ссылку на изображение?



  • @Mikhail все должно работать как вы описали.
    Приведите настройки SHK которые используете на странице заказа и укажите какую версию ШК используете?



  • @slaad Версия ShopKeeper последняя: 3.2.5-pl
    На странице заказа делаю вызов так:

    [[!FormIt?
    &hooks=`spam,shk_fihook,email,FormItAutoResponder,redirect`
    &submitVar=`order`
    &emailTpl=`shopOrderReport`
    &fiarTpl=`shopOrderReport`
    &emailSubject=`В интернет-магазине "[[++site_name]]" сделан новый заказ`
    &fiarSubject=`Вы сделали заказ в интернет-магазине "[[++site_name]]"`
    &emailTo=`[[++emailsender]]`
    &fiarReplyTo=`[[++emailsender]]`
    &fiarToField=`email`
    &emailFrom=`[[++emailsender]]`
    &emailFromName=`[[++emailsender]]`
    &fiarFrom=`[[++emailsender]]`
    &redirectTo=`7`
    &validate=`address:required,fullname:required,email,phone:required`
    &errTpl=`<br /><span class="error">[[+error]]</span>`
    ]]
    
    [[!Shopkeeper3@cart_order_page]]
    [[!$shopOrderForm]]
    

    Содержимое shopOrderForm:

    [[!shkOptions?
    &get=`delivery,payments`
    &post_name=`shk_delivery,payment`
    &toPlaceholders=`1`
    &pl_prefix=`shkopt_`
    &tpl=`select_option`
    ]]
    ***
    

    Содержимое набора параметров cart_order_page:

    TVsaveList
     
    additParamSource
     
    allowFloatCount
    Нет
     
    animCart
    Да
     
    cartRowTpl
    shopCartRowMy
     
    cartTpl
    @FILE shopCart.tpl
     
    changePrice
    Да
     
    className
    
    modResource
     
    counterField
    Нет
     
    counterFieldCart
    Да
     
    currency
    руб.
     
    debug
    Нет
     
    excepDigitGroup
    Да
     
    fieldPrice
    price
     
    flyToCart
    helper
     
    fromParentHeight
    1
     
    fromParentList
     
    goToOrderFormPage
    Нет
     
    groupBy
     
    hideOn
     
    jsScript
    1
     
    lang
    ru
     
    noConflict
    Нет
     
    noCounter
    Нет
     
    noJQuery
    Нет
     
    noLoader
    Нет
     
    orderDataTpl
    @FILE orderData.tpl
     
    orderFormPageId
    1
     
    packageName
     
    pluralWords
     
    processParams
    0
     
    prodCont
    div.shk-item
     
    savePurchasesFields
    goods-image1
     
    style
    default
     
    tplPath
    core/components/shopkeeper3/elements/chunk
    

    Содержимое чанка shopCartRowMy:

    <tr class="cart-order">
        <td align="left">
    	<b><a href="[[+url]]"><img src="[[+goods-image1]]" width="150" height="150" alt="[[+name]]"/><br/>[[+name]]</a></b> [[+addit_data]]</td>
        <td>[[+price]] [[+currency]]</td>
        <td>
            <input class="shk-count" type="text" size="2" name="count[]" maxlength="3" title="изменить количество" value="[[+count]]" />
        </td>
        <td align="right">
            <a href="[[+url_del_item]]" title="Удалить" class="shk-del"><img src="assets/components/shopkeeper3/web/css/default/delete.gif" width="17" height="17" alt="Удалить" /></a>
        </td>
    </tr>
    

    Содержимое чанка orderDataRow:

    <tr class="cart-order">
        <td>
    		<img src="[[+goods-image1]]" width="150" height="150" alt="[[+name]]"/>
            <b>[[+name]]</b>
        </td>
        <td>
            [[+addit_data:default=`&mdash;`]]
        </td>
        <td>
            [[+count]] шт.
        </td>
        <td>
            [[+price]] [[+currency]]
        </td>
    </tr>
    

    Результат: На странице оформления заказа, изображение отображается, а в письме приходит

    <img src="[[+goods-image1]]" width="150" height="150" alt="Товар1"/>
    

    Системные настройки shopkeeper:

    shk3.currency
    руб.
     
    shk3.currency_default
    1
     
    shk3.first_status
    1
     
    shk3.mail_contacts_row_tpl
    mailContactsRow
     
    shk3.mail_order_data_row_tpl
    orderDataRow
     
    shk3.mail_order_data_tpl
    orderDataOuter
     
    shk3.property_sets
    cart_catalog,cart_order_page
    

    Есть идеи, что может быть не так?


  • Администраторы

    Надо добавить домен вашего сайта
    <img src="http://mysite.com/[[+goods-image1]]" width="150" height="150" alt="[[+name]]"/>



  • @Andchir Добавил. Теперь на почту приходит

    <img src="http://mysitename.ru/[[+goods-image1]]" width="150" height="150" alt="Товар1"/>
    

    Есть ещё идеи?



  • @Mikhail
    Идей нет.
    У меня в отдельной таблице, возможно поэтому работает.

    По параметрам, cart_order_page
    className modResource Лучше оставить пусто.
    Не вижу orderDataRowTpl в настойках, но он по умолчанию должен быть и раз меняется, значит все ок.



  • @slaad А в отдельной таблице, где? Можете подробнее рассказать?
    Я попробую также сделать.



  • @Mikhail это потребует изменения всей структуры сайта. не думаю, что вам это нужно.

    Инфомация вот : Тут

    И не факт, что это решит проблему. По хорошему лучше залезть в модули ШК и поискать, где обрабатывается orderDataRowTpl посмотреть, что там.

    И кстати, проверьте на демо сайте, какие там настройки.



  • @slaad Спасибо. Проверю.



  • @slaad Большое спасибо за помощь. Выкачал демо версию, посмотрел как там всё настроено и нашёл причину, по которой не работал вывод изображения в письме. У меня параметр "savePurchasesFields" был заполнен значением "goods-image1" только в наборе параметров "cart_order_page".
    Когда я заполнил параметр "savePurchasesFields" в наборе параметров "cart_catalog", всё заработало, и письма стали приходить с изображениями :) (p.s. смайлик тут какой-то страшный)


  • Администраторы

    Заполнить параметр "savePurchasesFields" нужно во всех наборах параметров SHK, которые используются на сайте.



  • @Andchir Спасибо. Этот вопрос уже решён 5 дней назад (см. мой последний коммент 5 дней назад). Эту тему тоже можно отмечать как Solved :)



Похоже, подключение к Форум | MODX Shopkeeper было разорвано, подождите, пока мы пытаемся восстановить соединение.