2016-11-11 2 views
0

J'ai créé un type de message personnalisé nommé Courriels et ajouté un champ personnalisé à l'aide d'un plugin de champs personnalisés avancé à un message dans le type de message personnalisé appelé pied de page. le bas de chaque email automatique sortant du site.Envoyer une valeur de champ personnalisée à l'adresse e-mail

le code actuel J'utilise

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> 
'; 

le code fonctionne, il affiche l'image avec cette url en bas: http://mysite.col/footer_image.jpg

, mais je ne veux pas hardcoded, je veux être en mesure de le modifier avec le champ personnalisé que j'ai créé

J'ai regardé la documentation ACF et l'ai trouvé, mais je ne sais pas comment l'utiliser pour afficher le champ exact sur le type de message personnalisé que j'ai créé:

Répondre

1

Le code que vous avez décrit dans la documentation ACF vous indique comment obtenir l'image à partir d'un champ ACF en utilisant Image (avec type array).

Si nous devions implémenter cela dans votre fonction, nous devions référencer l'image de la page quelque part. Sans savoir comment vous appelez cela, vous pouvez l'intégrer de plusieurs façons.

La première, nous passons à travers la fonction appelée sur la page, comme si ...

wpcf7ev_verify_email_address2(get_field('image')); 

puis mettez à jour votre fonction comme si ...

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>'; 
} 

Ou , la deuxième façon, si vous appelez la fonction pour modifier une action ou quelque chose, vous devez obtenir l'image de n'importe quelle page ID/options de page à laquelle elle est assignée dans vos paramètres ACVF. Cela rendrait votre fonction regarder un peu comme ceci:

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>'; 
} 

Tous les ci-dessus est en supposant que votre fonction fonctionne comme prévu, avec vous besoin d'aide saisissant le champ ACF, et l'image est téléchargée. Vous pouvez envelopper vos déclarations de get_field dans les instructions if si nécessaire.