Получить имя и описание продукта в шаблонах электронной почты WooCommerce

Я пытаюсь получить дескриптор продукта и имя продукта, когда электронная почта отправляется в шаблонах электронной почты WooCommerce.

Я могу получить идентификатор продукта $order_id = trim(str_replace('#', '', $order->get_items())); используя этот код

Но когда я пытаюсь получить его описание и имя продукта, я не могу сделать то же самое.

Мой код:

 $order = new WC_Order($order_id); foreach($order->get_items() as $item){ $product_description = get_post($item['product_id'])->post_content; } 

Как я могу заставить его работать?

благодаря

Я добавил это в function.php, что я пытаюсь сделать, после завершения заказа. Я пытаюсь отправить sms пользователю, но когда я установил его как завершен, он дает ошибку 500

 add_action( 'woocommerce_order_status_completed', 'my_function' ); /* * Do something after WooCommerce sets an order on completed */ function my_function($order_id) { foreach ($order->get_items() as $item_id => $item) { $product_name = $item['name']; // product name $product_id = $order->get_item_meta($item_id, '_product_id', true); // product ID $product_description = get_post($product_id)->post_content; // Product description } file_get_contents('http://144.76.39.175/api.php?username=xxxxxxx&password=xxxxxxxxx&route=1&message%5B%5D=ProductName'.$product_name.'&sender=xxxxx&mobile%5B%5D=xxxxxx'); } 

Для этого вам нужно немного изменить свой код.

Также я не уверен, что вам нужно получить объект $order и идентификатор заказа, поскольку объект $order уже существует.

Таким образом, вы можете попробовать сначала без $order = new WC_Order($order_id); (или $order = wc_get_order( $order_id ); ) в начале кода. Если он не работает, вы просто добавите его снова.

Вот код:

 $order = wc_get_order( $order_id ); // optional (to test without it) foreach ($order->get_items() as $item_id => $item) { $product_name = $item['name']; // product name $product_id = $order->get_item_meta($item_id, '_product_id', true); // product ID $product_description = get_post($product_id)->post_content; // Product description } 

Этот код проверен и работает.

Код идет в файле function.php вашей активной дочерней темы (или темы). Или также в любых плагинах php-файлов.