Отображение товаров из корзины в теле письма для конкретной формы CF7.Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Отображение товаров из корзины в теле письма для конкретной формы CF7.

Сообщение Anonymous »

Есть два варианта размещения заказа в корзине на сайте:
  • Стандартное оформление заказа WooCommerce.
  • Заказ через менеджера с помощью формы заказа Contact Form 7.
Я использую код, который добавляет товары из корзины в конец конкретной формы Contact Form 7.

Код: Выделить всё

    add_filter( 'wpcf7_before_send_mail', 'wpcf7_before_send_mail_start_function' );
function wpcf7_before_send_mail_start_function($cf7){
$mail=$cf7->prop('mail');
if($mail){
$contact_form = $cf7->get_current();
$contact_form_id = $contact_form -> id;
if ($contact_form_id == 2384){
if ( !is_admin()){
$product_name = "";
wc()->frontend_includes();
WC()->session = new WC_Session_Handler();
WC()->session->init();
WC()->customer = new WC_Customer( get_current_user_id(), true );
WC()->cart = new WC_Cart();
foreach ( WC()->cart->get_cart() as $cart_item_key => $cart_item ) {
$_product   = apply_filters( 'woocommerce_cart_item_product', $cart_item['data'], $cart_item, $cart_item_key );
$product_id = apply_filters( 'woocommerce_cart_item_product_id', $cart_item['product_id'], $cart_item, $cart_item_key );
if ( $_product && $_product->exists() && $cart_item['quantity'] > 0 && apply_filters( 'woocommerce_widget_cart_item_visible', true, $cart_item, $cart_item_key ) ) {
$product_name = $product_name.apply_filters( 'woocommerce_cart_item_name', $_product->get_name(), $cart_item, $cart_item_key )."\n";
}
}
$my = $product_name;
}else{
$my = "";
}

$mail['body'].="\n\r".$my; // Add the contents of the cart to the end of the email body.

WC()->cart->empty_cart();
WC()->session->set('cart', array());
}
$cf7->set_properties(array('mail'=>$mail));
}
}
К сожалению, товары из корзины не отображаются в письме. Никаких ошибок не отображается.
Как исправить код и сделать его более корректным?

Подробнее здесь: https://stackoverflow.com/questions/798 ... c-cf7-form
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»