将变量或变量占位符从编辑器传递到PHP

时间:2020-02-06 作者:Kevin Nugent

我正在为我的客户构建一种方法,以构建一个要用wp\\U mail发送的消息内容。在此范围内,我希望他们能够选择变量,例如,在我的管理自定义字段中,消息可能如下所示:

电子邮件:$Email\\u地址$

名字:$First\\u Name$

因此,当我遍历这些行时,我可以发现一个变量占位符,并用我的变量替换$email\\u address$,因此我的PHP看起来像:

$body = \'Email Address: [email protected]<br>First Name: Mickey Mouse\';
wp_mail( $to, $subject, $body, $headers );
我想我想知道是否有一种特殊的或类似PHP的方法可以做到这一点,我肯定以前在插件中看到过,但不记得确切的格式。

1 个回复
最合适的回答,由SO网友:Cadu De Castro Alves 整理而成

您应该使用str_replace, 它接受数组作为参数:

$content = "Email: {{email}}\\nFirst Name: {{first_name}}";
$body = str_replace(
    [\'{{email}}\', \'{{first_name}}\'],
    [\'[email protected]\', \'Mickey Mouse\'],
    $content
);

小心使用$ 在占位符中。由于它在PHP中被广泛使用,因此不安全。这就是我使用mustache-like 示例中的语法。

相关推荐

PHP联系人表单未重定向

我在wordpress上构建了一个PHP联系人表单,根据用户选择的区域重定向用户。我用过“www.google”。com作为测试URL。但是,表单在提交后不会被重定向并保持在同一页面上。我哪里做错了?请查找以下代码:<?php if(isset($_POST[\'submit\'])) { $region = $_POST[\'Region\']; switch ($region ) { case \'North\': $