gpt4 book ai didi

php - 为什么我无法将 WordPress 函数分配给变量?

转载 作者:行者123 更新时间:2023-12-02 15:20:52 25 4
gpt4 key购买 nike

我正在创建一个表单,将表单的详细信息发送到我的电子邮件。这是我的代码:

<?PHP
$errors = array();
if (isset($_POST["submit"])) {
$to = "myemail@email.com";
$subject = "This is my subject";
$hotel = echo get_permalink();
$headers = array('From: '.$_POST['sendername'].' <'.$_POST['senderEmail'].'>');
//Check the name and make sure that it isn't a blank/empty string.
if(empty($sender)){
//Blank string, add error to $errors array.
$errors['sendername'] = "Please enter your name!";
}
if(empty($senderEmail)){
//Blank string, add error to $errors array.
$errors['senderEmail'] = "Please enter your email!";
}
$mailBody = "<h3>Hotel Details</h3>"

$mail_sent = wp_mail( $to, $subject, $mailBody, $headers );

}
if ($mail_sent) { ?>

<h1 style="color: #007f00;">Request sent.</h1>

<?php
} else {
?>

<form id="" name="" action="<?php echo get_permalink(); ?>" method="post">
<div class="label-input-wrapper">
<div class="form-label">Name</div>
<div class="form-input">
<input type="text" name="sendername" value="<?PHP if(!empty($errors)) { echo $sender;} ?>" />
<div class="error-msg">
<?php if(isset($errors['sendername'])) { echo '<span style="color: red">'.$errors['sendername'].'</span>'; } ?>
</div>
</div>
</div>
<div class="label-input-wrapper">
<div class="form-label">E-Mail</div>
<div class="form-input">
<input type="email" name="senderEmail" pattern="[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,4}$" required value="<?PHP if(!empty($errors)) { echo $senderEmail;} ?>" />
<div class="error-msg">
<?php if(isset($errors['senderEmail'])) { echo '<span style="color: red">'.$errors['senderEmail'].'</span>'; } ?>
</div>
</div>
</div>

<input type="submit" value="Submit" name="submit">
</form>

<?php
}
?>

如果我提交表单,它会显示 $hotel = echo get_permalink(); 行的解析错误意外的回显变量 。我不能分配wordpress功能get_permalink();变量值?

如果我将行从 $hotel = echo get_permalink(); 更改为至$hotel = permalink();它说 fatal error :调用未定义的函数 permalink()

但是如果我将隐藏字段放入表单中,它就会起作用: <input type="hidden" name="hotel_url" value="<?php echo get_permalink(); ?>" />并获取如下值:$hotel = isset($_POST["hotel_url"]);通过这种方式,我可以将该函数的值分配给一个变量,然后它会向我发送包含正确页面 URL 的电子邮件。

但我不想为此使用隐藏文件。因为有一些敏感信息我也想在提交表单时发送到我的电子邮件。如果我使用上述工作方法来做到这一点,任何人都可以看到这些值(如果看到源代码)。

那么如何将 WordPress 函数的值分配给变量呢?

最佳答案

你不能这样使用

$hotel = echo get_permalink();

你可以使用像

$hotel = get_permalink();

关于php - 为什么我无法将 WordPress 函数分配给变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26292604/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com