Введите часть искомого слова, названия или фразы...
↑ ↓
  1. Новые темы озаглавленные с маленькой буквы - удаляются без предупреждения!
  2. Вопрос без рабочей ссылки на проблему считается риторическим. Без ссылки и скриншота - провокацией!

Отправляем письмо,при изменении статуса заказа

Тема в разделе "Плагины для WooCommerce", создана пользователем Flexx, 21 апр 2016.

  1. Flexx

    Flexx

    Сообщения:
    2
    Симпатии:
    0
    Баллы:
    1
    Нужно,чтобы при изменении статуса приходило письмо пользователю со стандартным набором . Т.е. состав заказа,адрес и тд. Создал хук
    PHP:
    add_action("woocommerce_order_status_changed""shipped_notification");
    function 
    shipped_notification($order_id$checkout=null) {
        global 
    $woocommerce;
        
    $order = new WC_Order$order_id );
        if(
    $order->status === 'shipped' ) {

          
    $mailer $woocommerce->mailer();

          
    $message_body __'shipped Hello world2!!!' );

          
    $message $mailer->wrap_message(

          
    sprintf__'Order %s shipped' ), $order->get_order_number() ), $message_body
          
    );

          
    $mailer->send$order->billing_emailsprintf__'Order %s shipped' ), $order->get_order_number() ), $message );
         }
    }
    в таком варианте все ОК.Но мне в тело письма надо добавть еще это
    PHP:
    <?php $message_body '<table cellspacing="0" cellpadding="6" style="width: 100%; border: 1px solid #eee;" border="1"  bordercolor="#eee">';
    $message_body .= '<thead>';
    $message_body .= '<tr>';
    $message_body .= '<th scope="col" style="text-align:left; border: 1px solid #eee;">';
    __'Product''woocommerce' );
    $message_body .= '</th>';
    $message_body .= '<th scope="col" style="text-align:left; border: 1px solid #eee;">';
    __'Quantity''woocommerce' );
    $message_body .= '</th>';
    $message_body .= '<th scope="col" style="text-align:left; border: 1px solid #eee;">';
    __'Price''woocommerce' );
    $message_body .= '</th>';
    $message_body .= '</tr>';
    $message_body .= '</thead>';
    $message_body .= '<tbody>';
    sprintf("123");
    //echo $order->email_order_items_table( true, false, true );
    $message_body .= '</tbody>';
    $message_body .= '<tfoot>';
    if ( 
    $totals $order->get_order_item_totals() ) {
                    
    $i 0;
                    foreach ( 
    $totals as $total ) {
                        
    $i++;
                        
    ?><tr>
                        <?php $total['value'] = preg_replace('/[\(].*[\)]/U','(Includes all applicable taxes)',$total['value']); ?>
                            <th scope="row" colspan="2" style="text-align:left; border: 1px solid #eee; <?php if ( $i == ) echo 'border-top-width: 4px;'?>"><?php echo $total['label']; ?></th>
                            <td style="text-align:left; border: 1px solid #eee; <?php if ( $i == ) echo 'border-top-width: 4px;'?>"><?php echo $total['value']; ?></td>
                        </tr><?php
                    
    }
                }
        
    $message_body .= '</tfoot></table>';
    Подскажите как правильно все это реализовать
     
  2. STas

    STas

    Сообщения:
    11
    Симпатии:
    3
    Баллы:
    3
    Если мне не изменяет память там письмо состоит из 3 файлов, шапка, подвал и тело.
     
  3. Flexx

    Flexx

    Сообщения:
    2
    Симпатии:
    0
    Баллы:
    1
    Щапка с подвалом есть.Мне нужно собрать именно инфу и заказе