在带有onclick功能的电子邮件上发送wp帖子标题

时间:2015-01-03 23:05:14

标签: javascript php wordpress email

每次点击<a>时,我都会向Outlook帐户发送电子邮件。我希望该消息具有单击链接的wordpress帖子的标题,但是,它不会打印在电子邮件中。它无法识别the_title();获得帖子标题。其他问题是电子邮件进入垃圾邮件文件夹。

如何解决这个问题?

<a href="#" onclick="callFunction();">Report</a>
<script type="text/javascript">
    function callFunction(){
        <?php  
            $message = ''.the_title();
            $to = "my@outlook.com";
            $subject = "Expired post report";
            $from = "reporting@website.com"; 
            $headers = "From:" . $from;
            mail($to,$subject,$message,$headers); 
        ?>
    }
</script>

1 个答案:

答案 0 :(得分:0)

对于Javascript,客户端执行,要调用PHP函数,服务器端执行,您需要使用ajax创建一个非常小的API。如果在项目中包含jQuery,可以将Javascript变量发送到PHP文件并使用PHP发送邮件。

使用Javascript:

$.ajax({
    type: "POST",
    url: "path/to/file/mail.php",
    data: {
        message : "<?php echo the_title(); ?>",
        subject : "Expired post report"
    }
}).done(function( msg ) {
    alert( msg );
});

名为mail.php的PHP文件:

$message = $_REQUEST['message'];
$to = "my@outlook.com",
$subject = $_REQUEST['subject'];
$headers = "From: reporting@website.com";

echo mail($to, $subject, $message, $headers); 

mail()如果成功则返回true,因此Javascript函数将提示true / false。