Итак, у меня есть тема и плагин Dokan marketplace, который добавляет продавцов в мой магазин. Затем Dokan создает функцию или переменную или что-то еще, называемое vendor@ofthe.product, которое Dokan использует для отправки электронных писем поставщикам.
Теперь я пытаюсь добавить собственный код на страницу сведений о заказе клиента (эта страница принадлежит Woocommerce), который состоит из флажка и текстовой области. Когда покупатель нажимает кнопку «Отправить», настраиваемый код отправляет поставщику электронное письмо, в котором отображается текст, который клиент поместил в текстовую область.
Как я могу вызвать этот vendor@ofthe.product Dokan из шаблона Woocommerce? Это настраиваемый код:
<div class="woocommerce-column woocommerce-column--2 col-2">
<h2 class="woocommerce-column__title"><?php esc_html_e( 'URL del artículo' ); ?></h2>
<form method="post" name="update_status">
<input type="radio" name="status" id="completed" value="aprobar"><label form="completed">Aprobar</label><br/>
<input type="radio" name="status" id="cambiar" value="cambiar"><label form="cambiar">Solicitar cambios</label><br/>
<input type="radio" name="status" id="rechazar" value="rechazar"><label form="rechazar">Rechazar</label><br/>
<textarea></textarea>
<button type="submit" name="send">Enviar</button>
</form>
</div>
<?php
if (isset($_POST["send"]))
{
switch ($_POST["status"]) {
case 'aprobar':
$completed_status = $order->get_id();
$order = new WC_Order($completed_status);
$order->update_status('completed', 'order_note');
echo '<h3 style="color:green;">Aprobado ✓</h3>';
break;
case 'cambiar':
$completed_status = $order->get_id();
$order = new WC_Order($completed_status);
$order->update_status('processing', 'order_note');
echo '<h3 style="color:orange;">Se deben de cambiar cosas</h3>';
break;
case 'rechazar':
$completed_status = $order->get_id();
$order = new WC_Order($completed_status);
$order->update_status('cancelled', 'order_note');
echo '<h3 style="color:red;">Rechazado 🗴</h3>';
break;
}
}
?>
//Here we're trying to call to the seller email same way as Dokan does, but it doesn't work.
<?php
$email = 'vendor@ofthe.product';
$para = $email;
$titulo = 'El título';
$mensaje = 'Hola';
$cabeceras = 'From: webmaster@example.com' . "\r\n" .
'Reply-To: webmaster@example.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($para, $titulo, $mensaje, $cabeceras);
?>
<?php do_action( 'woocommerce_order_details_after_customer_details', $order ); ?>
Спасибо.