Как убрать лишнее из письма клиенту?

Тема в разделе "Общие вопросы", создана пользователем Stels, 20 фев 2017.

  1. Stels

    Stels Новичок

    Сообщения:
    5
    Симпатии:
    0
    Доброго времени суток, товарищи! Подскажите, пожалуйста, как убрать лишнее (подчёркнуто на скрине) из письма клиенту, которое отправляется при осуществлении им заказа?
    При удалении соответствующих (на мой взгляд) строчек в order.php (в папке /catalog/language/russian/mail), текст (к примеру, "Способ оплаты") меняется на "text_new_payment_method". С другим лишним для меня текстом - аналогично.
    Необходимо в принципе убрать способ оплаты, способ доставки, IP и "работает на OcStore" из письма.
    Версия 1.5.5.1.2
    Спасибо!!!
    Без имени-1.jpg
     
  2. Bkmz

    Bkmz Продвинутый пользователь

    Сообщения:
    440
    Симпатии:
    106
    catalog/view/theme/шаблон/template/mail/order.tpl
     
    Stels и Vlad нравится это.
  3. Stels

    Stels Новичок

    Сообщения:
    5
    Симпатии:
    0
    Огромное спасибо!!! Удалил соответствующие строчки и действительно помогло!!!
     
  4. Derill

    Derill Новичок

    Сообщения:
    16
    Симпатии:
    0
    Здравствуйте, подскажите пожалуйста как убрать "0 грн" в строке доставка?

    Заранее спасибо.
     
  5. losthill

    losthill Новичок

    Сообщения:
    13
    Симпатии:
    3
    В моделе вашей доставки заменить строку
    'text' => $this->currency->format(0.00)
    на
    'text' => $this->language->get('')
     
  6. Derill

    Derill Новичок

    Сообщения:
    16
    Симпатии:
    0
    Извиняюсь забыл написать версию:
    у меня ocStore-2.3.0.2.3

    К сожалению у файла catalog/model/checkout/order.php
    нет кода 'text' => $this->currency->format(0.00)

    есть похожий код:

    Код:
    // Order Totals
                    $data['totals'] = array();
    
                    $order_total_query = $this->db->query("SELECT * FROM `" . DB_PREFIX . "order_total` WHERE order_id = '" . (int)$order_id . "' ORDER BY sort_order ASC");
    
                    foreach ($order_total_query->rows as $total) {
                        $data['totals'][] = array(
                            'title' => $total['title'],
                            'text'  => $this->currency->format($total['value'], $order_info['currency_code'], $order_info['currency_value']),
                        );
                    }
     
  7. losthill

    losthill Новичок

    Сообщения:
    13
    Симпатии:
    3
    так не в ордере надо править
    файл catalog/model/extension/shipping/ваш_способ_доставки
     
    Derill нравится это.
  8. Derill

    Derill Новичок

    Сообщения:
    16
    Симпатии:
    0
    Спасибо, действительно я не там смотрел!
    Но нарисовался другой вопрос на сайте установлен Simple.

    Если я правельно понимаю мне нужно в этом коде
    Код:
        $quote_data['xshipping'.$i] = array(
                            'code'         => 'xshipping'.'.xshipping'.$i,
                            'title'        => $this->config->get('xshipping_name'.$i),
                            'cost'         => $shipping_cost,
                            'tax_class_id' => $this->config->get('xshipping_tax_class_id'.$i),
                            'text'         => $this->currency->format($this->tax->calculate($shipping_cost, $this->config->get('xshipping_tax_class_id'.$i), $this->config->get('config_tax')), $this->session->data['currency'])
                        );
    строку:
    'text' => $this->currency->format($this->tax->calculate($shipping_cost, $this->config->get('xshipping_tax_class_id'.$i), $this->config->get('config_tax')), $this->session->data['currency'])

    заменить на:

    'text' => $this->language->get('мой текст')
     
  9. broncom

    broncom Новичок

    Сообщения:
    5
    Симпатии:
    0
    Подскажите плиз, у меня в чекауте таким образом меняется текст, но в письме так и остается либо 0.00, либо другое число указанное в способе доставки, где всетаки это поменять можно для письма?
    ocStore 2.3, тема стандартная
     
  10. karpov

    karpov Продвинутый пользователь

    Сообщения:
    1.519
    Симпатии:
    241
    Тут в теме как раз для письма написано. Чекаут и письмо это разное.
     
  11. broncom

    broncom Новичок

    Сообщения:
    5
    Симпатии:
    0
    Пардон, так я про письмо и спрашиваю
     
  12. Vlad

    Vlad Эксперт

    Сообщения:
    4.129
    Симпатии:
    999
    А что хотите то поменять? Доставка записывается в базу и из базы она потом и берет данные.
    Смотрим в модель \catalog\model\checkout\order.php
    видим
    PHP:
                    foreach ($order_total_query->rows as $total) {
                        
    $data['totals'][] = array(
                            
    'title' => $total['title'],
                            
    'text'  => $this->currency->format($total['value'], $order_info['currency_code'], $order_info['currency_value']),
                        );
                    }
    В можете тут в цикле сделать нужную замену в этом массиве $order_total_query->rows
    любым доступным способом.
     
  13. broncom

    broncom Новичок

    Сообщения:
    5
    Симпатии:
    0
    В письме, для определенных способов доставки (например flat1) сделать чтобы не 0р в стоке доставки было, а текст.
     
  14. Vlad

    Vlad Эксперт

    Сообщения:
    4.129
    Симпатии:
    999
    что то типа такого
    PHP:
    foreach ($order_total_query->rows as $total) {
        if (
    $total['code'] == "flat1") {
            
    $data['totals'][] = array(
                
    'title' => "Доставка",
                
    'text'  => "Бесплатно",
            );
        } else {
            
    $data['totals'][] = array(
                
    'title' => $total['title'],
                
    'text'  => $this->currency->format($total['value'], $order_info['currency_code'], $order_info['currency_value']),
            );
        }
    }
    Но это неправильно в моделе делать так. Лучше в шаблоне или контроллере. В зависимости от версии. Смысл я показал.
     
    broncom нравится это.
  15. broncom

    broncom Новичок

    Сообщения:
    5
    Симпатии:
    0
    Спасибо, я и сделал в шаблонах через сверку тайтлов, но тоже такое себе решение.
     
  16. Георигй

    Георигй Новичок

    Сообщения:
    16
    Симпатии:
    0
    Подскажите как в письме о заказе убрать IP адрес и в письме о восстановление пароля? Версия ocStore 3.0.3.7
    upload_2022-7-19_19-23-9.png
     
  17. SiteMix

    SiteMix Продвинутый пользователь

    Сообщения:
    1.021
    Симпатии:
    174
    catalog/view/theme/default/template/mail/forgotten.twig
    Убрать или закомментировать:
    Код:
    {{ text_ip }}
    
    {{ ip }}
     
  18. Георигй

    Георигй Новичок

    Сообщения:
    16
    Симпатии:
    0
    Убрал, но в письме о заказе всё равно приходит, а вот в письме об восст пароля, там нет IP
     
  19. SiteMix

    SiteMix Продвинутый пользователь

    Сообщения:
    1.021
    Симпатии:
    174
    Ещё и в заказе...
    Ну, можно же было по аналогии в соседних файлах поискать... ;)
    catalog/view/theme/default/template/mail/order_add.twig
    Код:
      <b>{{ text_ip }}</b> {{ ip }}<br />
    После редактирования этого файла может потребоваться обновление кэша модификаторов.

    Кстати, лучше всегда подобные правки вносить модификаторами.
     
    Последнее редактирование: 19 июл 2022
  20. Георигй

    Георигй Новичок

    Сообщения:
    16
    Симпатии:
    0
    Спасибо за помощь :)