Получить sku и изображение продукта в электронных письмах woocommerce - PullRequest
0 голосов
/ 16 октября 2018

Я сделал копию файла "email-order-details.php" в моей дочерней теме.Теперь я могу изменить HTML, но хотел бы добавить дополнительный столбец в мою таблицу для изображения продукта.С помощью этого кода я могу отображать изображение и номер изделия, но он находится в том же столбце, что и название продукта, номер изделия, описание продукта.

        <?php
        echo wc_get_email_order_items( $order, array( // WPCS: XSS ok.
            'show_sku'      => $true,
            'show_image'    => false,
            'image_size'    => array( 32, 32 ),
            'plain_text'    => $plain_text,
            'sent_to_admin' => $sent_to_admin,
        ) );
        ?>

Я также хочу отобразить номер без () и яхочу разместить его на вершине колонны.Я думаю, что должен быть массив или переменные или что-то подобное, чтобы получить даты.

В этой строке, например, отображается цена, кто-нибудь может подсказать, как одинаково отображать sku и изображение товара?

<th class="td" scope="col" style="text-align:<?php echo esc_attr( $text_align ); ?>;"><?php esc_html_e( 'Price', 'woocommerce' ); ?></th>

Заранее спасибо

1 Ответ

0 голосов
/ 17 октября 2018

попробуйте этот фрагмент кода, я использую его в functions.php в дочерней теме:

function sww_add_wc_order_email_images( $table, $order ) {

ob_start();

$template = $plain_text ? 'emails/plain/email-order-items.php' : 'emails/email-order-items.php';
wc_get_template( $template, array(
    'order'                 => $order,
    'items'                 => $order->get_items(),
    'show_download_links'   => $show_download_links,
    'show_sku'              => $show_sku,
    'show_purchase_note'    => true,
    'show_image'            => true,
    'image_size'        => array( 200, 200 )
) );

return ob_get_clean();
}
add_filter( 'woocommerce_email_order_items_table', 'sww_add_wc_order_email_images', 10, 2 );
...