Enviar e-mail da área de administração para endereços no campo personalizado

O meu cliente quer enviar um e-mail da canvas de edição de página para vários endereços de e-mail. Cada página possui um campo personalizado chamado endereço_diretório que leva os endereços separados por vírgulas:

insira a descrição da imagem aqui

Cada página terá um conjunto de endereços diferente. Eu preciso de uma área de texto abaixo deste campo em que meu cliente pode entrar no corpo do e-mail e um botão de envio abaixo que realmente envia o e-mail.

add_meta_box() um formulário com uma área de texto e um formulário de envio à página da edição da página usando a function add_meta_box() :

  // Add metabox function metabox_after_publish() { add_meta_box( 'send-email', 'Send E-mail', 'send_email_metabox_content', 'page', 'advanced', 'high' ); } add_action( 'add_meta_boxes', 'metabox_after_publish' ); // callback function to populate metabox function send_email_metabox_content() { ?> 

<?php }

insira a descrição da imagem aqui

Como posso fazer a function do formulário para que ele envie o conteúdo da área de texto aos endereços de e-mail no campo personalizado?

Solutions Collecting From Web of "Enviar e-mail da área de administração para endereços no campo personalizado"

Primeiro, decida se deseja usar o GET ou o POST para o seu formulário. (sem especificar o método, ele usará GET.)

Você precisará do atributo de name preenchido para a sua área de texto, portanto, as informações podem ser enviadas. Em seguida, adicione o processamento do formulário à sua function:

(ou seja, if ( isset($_POST["message"]) && !empty($_POST["message"]) ) {...}

Você precisará usar get_post_meta( get_the_ID(), 'email_addresses' ) para recuperar os endereços de e-mail do campo personalizado. Armazene esse valor em uma variável de string. Você deseja separar os endereços de e-mail em uma matriz (cuidado com o espaço – você deve se certificar de que seu cliente sabe se eles devem ou não devem ter um espaço após as vírgulas) .

Então, você precisará percorrer a matriz com um foreach , (porque o parâmetro $to da function mail() não aceita arrays, apenas strings). Você pode construir seu processamento de formulário de e-mail como os exemplos desta página .

Espero que isto ajude! Deixe-me saber se você precisa de esclarecimentos.