2016-11-11 11 views
0

Я создал собственный тип почтового сообщения с именем «Электронная почта» и добавил настраиваемое поле с использованием дополнительных настраиваемых полей плагина для одного сообщения в пользовательском типе сообщений, называемом нижним колонтитулом электронной почты, поле - это поле изображения, которое должно отображаться на в нижней части каждой автоматической электронной почты, выходящей из веб-сайта.Отправить настраиваемое значение поля по электронной почте

текущий код, я использую

function wpcf7ev_verify_email_address2($wpcf7_form){ 
    $email_footer = '<html> 
<body style="color:#000000;"> 
<div style="font-size:16px;font-weight:bold;margin-top:20px;"> 
Regards, 
<br/> 

$email_footer .= '<img src="http://mysite.col/footer_image.jpg" width="100%" alt=""/> 
</div>'; 
$email_footer .='<div style="display:none;">'.generateRandomString(). 
'</div></body> 
</html> 
'; 

код работает, он отображает изображение с этим URL в нижней части: http://mysite.col/footer_image.jpg

, но я не хочу жёстко, я хочу иметь возможность изменять его с настраиваемым полем, которое я создал

Я просмотрел документацию по ACF и нашел это, но не знаю, как использовать его, чтобы показать, что точное поле на пользовательском почтовом типе, который я создал:

<?php 

$image = get_field('image'); 

if(!empty($image)): ?> 

    <img src="<?php echo $image['url']; ?>" alt="<?php echo $image['alt']; ?>" /> 

<?php endif; ?> 

ответ

1

Код, который вы указали в документации ACF, рассказывает вам, как получить изображение из поля ACF с помощью Image (с массивом типов).

Если бы мы реализовали это в вашей функции, нам нужно было бы ссылаться на изображение со страницы где-то. Не зная, как вы это называете, вы можете вставить его несколькими способами.

Первый путь, мы проходим через функции называется на странице, как так ...

wpcf7ev_verify_email_address2(get_field('image')); 

, а затем обновить вашу функцию как так ...

function wpcf7ev_verify_email_address2($image, $wpcf7_form) 
{ 
    $email_footer = '<div style="font-size:16px;font-weight:bold;margin-top:20px;">Regards,<br/>'; 
    // get the image from the passed in image function. 
    $email_footer .= '<img src="' . $image['url'] . '" width="100%" alt="' . $image['alt'] . '"/></div>'; 
    $email_footer .='<div style="display:none;">' . generateRandomString() . '</div>'; 
} 

Или , второй способ, если вы вызываете функцию для изменения действия или чего-то еще, вам нужно будет получить изображение с той страницы страницы/параметров страницы, которой она назначена, в настройках ACVF. Это сделает ваши функции выглядеть немного как это:

function wpcf7ev_verify_email_address2($wpcf7_form) 
{ 
    // get image acf field from page with id 1 
    $image = get_field('image', 1); 

    // or get image from acf field on options page 
    // $image = get_field('image', 'options'); 

    $email_footer = '<div style="font-size:16px;font-weight:bold;margin-top:20px;">Regards,<br/>'; 
    $email_footer .= '<img src="' . $image['url'] . '" width="100%" alt="' . $image['alt'] . '"/></div>'; 
    $email_footer .='<div style="display:none;">' . generateRandomString() . '</div>'; 
} 

Все вышеперечисленное предполагая, что функция работает, как задумано, с вами, нуждающихся в помощи, захватывая поле ACF, и изображение будет загружено. Вы можете обернуть ваши объявления get_field в if заявлениях, если это необходимо.

 Смежные вопросы

  • Нет связанных вопросов^_^