Wie erstelle ich eine Schaltfläche in WordPress, die die URL der aktuellen Seite per E-Mail versendet?

Lesezeit: 1 Minute

Benutzeravatar von Alex Reid
Alex Reid

Wie kann ich eine Schaltfläche erstellen, die beim Drücken einen E-Mail-Link mit der aktuellen Seite in WordPress sendet? Ich weiß, dass es ein Plugin gibt, aber ich würde gerne wissen, wie man es selbst macht.

Etwas wie das:

$(function(){
    $('button').click(function(){
        $.ajax({
            data: 'action',
            url: '...'
        }).done(function( response ){
            $('button').html('Thank you');
        })
    })
})

Und PHP:

if( $_POST['action'] =='action'){
    mail("[email protected]", "My Subject", "text");
}

  • Wenn das Plugin, das Sie nicht möchten, kostenlos ist, können Sie sich seinen Code ansehen und sich so inspirieren lassen 🙂

    – LoicTheAztec

    12. Mai 2016 um 18:01 Uhr

Benutzeravatar von Danish
dänisch

Funktionen.php

wp_register_script( 'myscript', path/to/script.js, array( 'jquery' ));
wp_localize_script( 'myscript', 'ajaxobj', array('ajaxurl' => admin_url().'admin-ajax.php') );
wp_enqueue_script( 'myscript');

script.js

$(function(){
     $('button').click(function(){

     var admin_url = ajaxobj.ajaxurl;

     $.ajax({
         type:'POST',
         data: {action: 'mail_func', name: 'danish'},
         url: admin_url
     }).done(function( response ){
         $('button').html('Thank you');
     })
 })
})

Und PHP (functions.php)

 add_action( 'wp_ajax_mail_func', 'mail_func_callback' );
 add_action( 'wp_ajax_nopriv_mail_func', 'mail_func_callback' );

 function mail_func_callback(){
     $Name= $_POST['name']; //danish
     wp_mail( $to, $subject, $message, $headers, $attachments );
     die();
 }

  • @Александр-Рейдзан Ich habe meine Antwort bearbeitet, die die Ajax-URL dynamisch erhält. Überprüfen Sie bitte.

    – dänisch

    12. Mai 2016 um 19:11 Uhr

1442060cookie-checkWie erstelle ich eine Schaltfläche in WordPress, die die URL der aktuellen Seite per E-Mail versendet?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy