Электронное письмо с уведомлением о новом заказе, отправленное авторам связанных продуктов в WooCommerce.Php

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Электронное письмо с уведомлением о новом заказе, отправленное авторам связанных продуктов в WooCommerce.

Сообщение Anonymous »

Я не использую плагин поставщика, но использую функцию авторизации пользователя WordPress, чтобы позволить индивидуальному пользователю «chu_xe» публиковать и управлять продуктами, которые он публикует.
Я хочу, чтобы был заказ, вытекающий из продукт, который они опубликовали, им будет отправлено уведомление по электронной почте о новом заказе (электронная почта издателя продукта).
Я настроил его так, чтобы клиентам разрешалось заказывать только 1 продукт для каждого заказа.
Пожалуйста, помогите мне, спасибо. Вот код, который я применил, но он не работает.

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

add_action('woocommerce_checkout_order_processed', 'send_email_to_product_publisher_on_new_order', 10, 1);
function send_email_to_product_publisher_on_new_order($order_id) {
if (!$order_id) return;

// Lấy đối tượng đơn hàng
$order = wc_get_order($order_id);
if (!$order) return;

// Vì chỉ có một sản phẩm, chúng ta lấy sản phẩm đầu tiên trong đơn hàng
$items = $order->get_items();
$item = reset($items);
if (!$item) return;

$product_id = $item->get_product_id();
$author_id = get_post_field('post_author', $product_id);
$author = get_userdata($author_id);
if (!$author) return;

$author_email = $author->user_email;
$author_name = $author->display_name;

if (!$author_email) return; // Nếu không có email, không tiếp tục

// Tiêu đề và nội dung email
$subject = 'Thông báo: Bạn vừa nhận được đơn hàng mới!';
$message = "Xin chào $author_name,\n\nBạn vừa nhận được một đơn hàng mới cho sản phẩm mà bạn đã đăng trên website của chúng tôi.\n";
$message .= "Thông tin đơn hàng:\n";
$message .= "Số đơn hàng: " . $order->get_order_number() . "\n";
$message .= "Tổng giá trị: " . wc_price($order->get_total()) . "\n";
$message .= "Bạn có thể xem chi tiết đơn hàng tại đây: " . $order->get_view_order_url() . "\n\n";
$message .= "Cảm ơn bạn đã đóng góp sản phẩm tuyệt vời của bạn cho cộng đồng của chúng tôi!";

// Headers
$headers = array('Content-Type: text/plain; charset=UTF-8');

// Gửi email
wp_mail($author_email, $subject, $message, $headers); }
Я пробовал много кодов, но они не работают, электронное письмо не отправляется человеку, разместившему товар.

Подробнее здесь: https://stackoverflow.com/questions/784 ... oocommerce
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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