У меня есть собственный тип записи WordPress с именем Properties и ключом свойства типа записи. Этот тип сообщения имеет несколько настраиваемых полей:
имя,
фамилия,
адрес электронной почты,
номер телефона,
альтернативный номер телефона.
Как тип записи, так и настраиваемые поля создаются с помощью плагина расширенных настраиваемых полей (ACF).
Во внешнем интерфейсе у меня есть блок одного продукта WooCommerce, который отображает подробную информацию о информацию о продавце с названием продукта, включая кнопку «Добавить в корзину».
Когда пользователь нажимает кнопку «Добавить в корзину», я хочу проверить, какой объект недвижимости просматривает пользователь, и получить правильную контактную информацию этого товара. конкретный пост/объект и добавьте эту информацию в подтверждение заказа, когда пользователь оплатил информационный продукт продавца.
Вот мой связанный код:
У меня есть собственный тип записи WordPress с именем Properties и ключом свойства типа записи. Этот тип сообщения имеет несколько настраиваемых полей: [list] [*]имя, [*]фамилия, [*]адрес электронной почты, [*]номер телефона, [*]альтернативный номер телефона. [/list] Как тип записи, так и настраиваемые поля создаются с помощью плагина расширенных настраиваемых полей (ACF). Во внешнем интерфейсе у меня есть блок одного продукта WooCommerce, который отображает подробную информацию о информацию о продавце с названием продукта, включая кнопку «Добавить в корзину». Когда пользователь нажимает кнопку «Добавить в корзину», я хочу проверить, какой объект недвижимости просматривает пользователь, и получить правильную контактную информацию этого товара. конкретный пост/объект и добавьте эту информацию в подтверждение заказа, когда пользователь оплатил информационный продукт продавца. Вот мой связанный код: [code]add_filter('woocommerce_add_cart_item_data', 'add_property_seller_info_to_cart', 10, 2); function add_property_seller_info_to_cart($cart_item_data, $product_id) { // Check if the product being added is the 'Seller Information' product with ID 502 if ($product_id == 502) { // Get the current property post being viewed if (is_singular('property')) { global $post; if ($post) { $property_id = $post->ID;
// Get the custom field values for the property seller $seller_name = get_field('property_seller_name', $property_id); $seller_surname = get_field('property_seller_surname', $property_id); $seller_email = get_field('property_seller_email', $property_id); $seller_phone = get_field('property_seller_phone', $property_id); $seller_alternative_phone = get_field('property_seller_alternative_phone', $property_id);
// Add the seller information to the cart item data $cart_item_data['property_seller_info'] = array( 'name' => $seller_name, 'surname' => $seller_surname, 'email' => $seller_email, 'phone' => $seller_phone, 'alternative_phone' => $seller_alternative_phone, ); } } } return $cart_item_data; }
add_action('woocommerce_checkout_create_order_line_item', 'add_property_seller_info_to_order', 10, 4); function add_property_seller_info_to_order($item, $cart_item_key, $values, $order) { if (isset($values['property_seller_info'])) { $seller_info = $values['property_seller_info'];
// Add seller information as meta data to the order item $item->add_meta_data('Seller First Name', $seller_info['name']); $item->add_meta_data('Seller Surname', $seller_info['surname']); $item->add_meta_data('Seller Email', $seller_info['email']); $item->add_meta_data('Seller Phone', $seller_info['phone']); $item->add_meta_data('Seller Alternative Phone', $seller_info['alternative_phone']); } }
add_action('woocommerce_email_order_details', 'add_seller_info_to_order_email', 10, 4); function add_seller_info_to_order_email($order, $sent_to_admin, $plain_text, $email) { foreach ($order->get_items() as $item_id => $item) { $seller_name = $item->get_meta('Seller First Name'); $seller_surname = $item->get_meta('Seller Surname'); $seller_email = $item->get_meta('Seller Email'); $seller_phone = $item->get_meta('Seller Phone'); $seller_alternative_phone = $item->get_meta('Seller Alternative Phone');
if ($seller_name && $seller_surname) { echo 'Seller Information'; echo 'Name: ' . esc_html($seller_name) . ' ' . esc_html($seller_surname) . ' '; echo ' Email: ' . esc_html($seller_email) . ' '; echo ' Phone: ' . esc_html($seller_phone) . ' '; echo ' Alternative Phone: ' . esc_html($seller_alternative_phone) . ' '; } } } [/code] Код не отображает информацию о продавце ни в заказах, ни в уведомлениях по электронной почте. Я не уверен, в чем проблема.
У меня есть собственный тип записи WordPress с именем Properties и ключом свойства типа записи. Этот тип сообщения имеет несколько настраиваемых полей:
имя,
фамилия,
адрес электронной почты,
номер телефона,
альтернативный номер телефона....
У меня есть собственный тип записи WordPress с именем Properties и ключом свойства типа записи. Этот тип сообщения имеет несколько настраиваемых полей:
имя,
фамилия,
адрес электронной почты,
номер телефона,
альтернативный номер телефона....
У меня есть собственный тип записи с именем Properties и ключом свойства типа записи на веб-сайте WordPress. Тип сообщения имеет настраиваемые поля: имя, фамилия, адрес электронной почты, номер телефона и альтернативный номер телефона. И тип...
У меня есть собственный тип записи WordPress с именем Properties и ключом свойства типа записи. Этот тип сообщения имеет несколько настраиваемых полей:
имя,
фамилия,
адрес электронной почты,
номер телефона,
альтернативный номер телефона....