Использование ACF get_field в пользовательской форме - PullRequest
0 голосов
/ 24 августа 2018

Я использую параметры ACF для сохранения и адрес электронной почты для контактных форм.Используя многосайтовый Wordpress, я могу установить, кому я хочу, чтобы формы переходили через панель настроек.Форма отправляет автоответчик, но не отправляется на сохраненный адрес электронной почты.

<?php
$contact_form_email = get_field('contact_form_email','options');
$cyber_to = array($contact_form_email);
# CyberMark Subject Line
$cyber_subject  = $s." Form Submission";

# Headers of email
$cyber_headers  = "From: " . strip_tags('noreply@email.com') . "\r\n";
$cyber_headers .= "MIME-Version: 1.0" . "\r\n";
$cyber_headers .= "Content-Type: text/html; charset=ISO-8859-1" . "\r\n";

# CyberMark message
$cyber_msg = '<table width="500" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>Name:</td>
<td style="margin-left: 5px;">'.$n.'</td>
</tr>
<tr>
<td>Email:</td>
<td style="margin-left: 5px;">'.$e.'</td>
</tr>
<tr>
<td>Phone:</td>
<td style="margin-left: 5px;">'.$t.'</td>
</tr>
<tr>
<td>Message:</td>
<td style="margin-left: 5px;">'.$m.'</td>
</tr>
</table>';

# Loop through all email recipients
foreach($cyber_to as $cyber_email)
{
    mail($cyber_email,$cyber_subject,$cyber_msg,$cyber_headers);
}

?>

1 Ответ

0 голосов
/ 24 августа 2018

Я полагаю из вашей проблемы, что PHP-файл, обрабатывающий форму, находится только внутри папки WP, он не работает в WordPress "ambient".

На самом деле вам нужно загрузить WP внутри файла следующим образом:

require($_SERVER['DOCUMENT_ROOT'].'/wp-load.php');

Это загрузит все-wordpress для использования в этом файле, включая get_field (). ;)

...