web-dev-qa-db-fra.com

Envoyer un mail à partir de la page en utilisant wp_mail

Comment appeler la fonction WP_MAIL à partir d'une page comportant un formulaire?

Je voudrais créer un formulaire dans une page et en appuyant sur "Envoyer" activer une fonction dans le fichier functions.php, de sorte que le courrier soit envoyé ET retournant à une page où les informations du formulaire sont présentées avec la confirmation que le courrier a été envoyé. effectivement envoyé.

N'importe qui

C'est la forme:

      <form action = "<?php $_PHP_SELF ?>" method = "GET">
         Name: <input type = "text" name = "name" />
         Age: <input type = "text" name = "age" />
         <input type = "submit" />
      </form>

Catching this dans la page de contenu ne fonctionne pas, cela devrait-il être placé dans le functions.php?

<?php
   if( $_GET["name"] || $_GET["age"] ) {
      echo "Welcome ". $_GET['name']. "<br />";
      echo "You are ". $_GET['age']. " years old.";

      exit();
   }
?>
1
AgoraLive

Ceci peut (et devrait) être réalisé en utilisant l'action admin_post. Jetez un coup d’œil à la documentation pour un exemple:

https://codex.wordpress.org/Plugin_API/Action_Reference/admin_post_(action)

SitePoint propose également un didacticiel plus complet ici:

https://www.sitepoint.com/handling-post-requests-the-wordpress-way/

J'espère que cela pourra aider.

1
Matt Sims