создать кнопку для отправки электронного письма с коротким кодом (wordpress - без плагина) - PullRequest
0 голосов
/ 09 мая 2018

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

Я использую шорткод для этого, но мне не удается хорошо написать этот шорткод.

/* Shortcode bouton */
function boutoncode($atts, $content = null) {
extract(shortcode_atts(array(
'lien' => '#',
'couleur' =>'bleu'
), $atts));

$codecode = ' <input class="bouton '.$couleur.'"  type="submit" name="envoyer" value="Cliquez ICI pour recevoir par Email le CODE PROMO" />';

$postcode = $_POST["envoyer"];

if ( isset( $_POST["envoyer"] ) ) {   
   $codemail ='envoi du mail';
}

return $codecode . $postcode . $codemail;

}
add_shortcode('boutoncode', 'boutoncode');

У меня проблема с состоянием. Я не знаю, как это написать.

Я нашел такой пример:

if valeur=oui
 $retour=super
else
 $retour=non
end-if

return $retour

Но я хочу что-то вроде

`когда я нажимаю кнопку, у меня есть значение затем я возвращаю письмо ’

когда я делаю следующий код, кнопка, конечно же, не появляется, и возврат возвращает код (условие не работает каким-либо образом):

function boutoncode($atts, $content = null) {
extract(shortcode_atts(array(
'lien' => '#',
'couleur' =>'bleu'
), $atts));

$codecode = ' <input class="bouton '.$couleur.'"  type="submit" name="envoyer" value="Cliquez ICI pour recevoir par Email le CODE PROMO" />';

$postcode = $_POST['envoyer'];

$emailcode ='
if ( isset($postcode) ) {   
    echo "TEST";
    //  include("send-email-contact.php"); 
 }';


return $emailcode;

}
add_shortcode('boutoncode', 'boutoncode');

Я все еще ищу Не могли бы вы помочь мне с этим?

большое спасибо

1 Ответ

0 голосов
/ 17 мая 2018

хорошо, код, который работает, следующий:

function boutoncode($atts, $content = null) {
global $wpdb;
extract(shortcode_atts(array(
'text' => 'Text'
), $atts));

$codecode = ' 
<form method="post" >
<input class="bouton"  type="submit" name="envoyer" value="' . $text.'"    style="
white-space: pre-wrap; /* css-3 */  white-space: -moz-pre-wrap;  /* Mozilla, since 1999 */ white-space: -pre-wrap;      /* Opera 4-6 */ white-space: -o-pre-wrap;    /* Opera 7 */ word-wrap: break-word;       /* Internet Explorer 5.5+ */
width:auto; height:auto; text-align:center;" />
</form>';

$postcode = $_POST['envoyer'];

if ( isset($postcode) ) {   
    $msg = "First line of text\nSecond line of text";
    $msg = wordwrap($msg,70);

    mail("myEmail@gmail.com","My subject",$msg);   


    if (mail("myEmail@gmail.com","My subject",$msg)==true)
    {
        $message = 'ENVOI';
    }
    else
    {
        $message = 'PB ENVOI';
    }
    //  include("send-email-contact.php"); 
 }

return $codecode . $message;

}
add_shortcode('boutoncode', 'boutoncode');

Я получаю электронную почту .....

...