Dokan - электронное письмо для звонящего продавца из шаблона Woocommerce - PullRequest
0 голосов
/ 17 июня 2020

Итак, у меня есть тема и плагин 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 &check;</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 &#128500;</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 ); ?>

Спасибо.

...