Здравствуйте и спасибо заранее.Мой первый вопрос здесь, поэтому извиняюсь, если это не 100%.Также заранее прошу прощения за огромный вопрос - я хотел включить все, что я нашел и попробовал.
Я использую плагин WooCommerce Marketplace (WCMp) для управления поставщиками.
Когда клиент размещает заказ, WMCp отправляет электронное письмо о новом заказе поставщику продукта, а WooCommerce отправляет электронное письмо администратору сайта (мне).В существующем письме, которое я получаю, содержится SKU продукта, однако электронное письмо, которое получает поставщик, отсутствует.
Из того, что я вижу в шаблоне WooCommerce , SKUотображается через:
if ( $show_sku && $sku ) {
echo wp_kses_post( ' (#' . $sku . ')' );
}
, а $ sku определяется следующим образом:
foreach ( $items as $item_id => $item ) :
$product = $item->get_product();
$sku = '';
$purchase_note = '';
$image = '';
if ( ! apply_filters( 'woocommerce_order_item_visible', true, $item ) ) {
continue;
}
if ( is_object( $product ) ) {
$sku = $product->get_sku();
$purchase_note = $product->get_purchase_note();
$image = $product->get_image( $image_size );
}
В шаблоне электронной почты WCMp New Order содержимое электронной почты вызывается черезфункция vendor_order_item_table, которая определена здесь .Ниже приведен код, который я пытался добавить (между строк 517 и 518):
foreach ( $items as $item_id => $item ) :
$product = $item->get_product();
$sku = '';
}
if ( is_object( $product ) ) {
$sku = $product->get_sku();
}
if ( $show_sku && $sku ) {
echo wp_kses_post( ' (#' . $sku . ')' );
Я знаю, что в конце мне не хватает фигурной скобки - если я добавлю это, я получуошибка HTTP 500.Я попытался закомментировать if ( $show_sku && $sku ) {
, чтобы обойти условие отображения эха, но это также выдает ошибку HTTP 500.
Я попытался связаться с автором плагина и потратил большечем несколько дней, Гугл без особой удачи.
Опять же, спасибо за любую помощь.
Редактировать Я нашел приведенный ниже фрагмент из SellWithWP.com :
function sww_add_sku_to_wc_emails( $args ) {
$args['show_sku'] = true;
return $args;
}
add_filter( 'woocommerce_email_order_items_args', 'sww_add_sku_to_wc_emails' );
К сожалению, это только добавляет SKU к электронным письмам, генерируемым WooCommerce (т. Е. К электронному письму клиента), но не к электронному письму Vendor New Order.