Как отправить письмо на mailchimp Автоматизация на WordPress Опубликовать публикацию - PullRequest
0 голосов
/ 26 марта 2019

В WordPress я пытаюсь отправить конкретное письмо, включенное в качестве значения настраиваемого поля (называемого customer_email) в каждое сообщение, для автоматизации mailchimp.

Ниже приведен код, который у меня есть, и он нерабочая

function email_on_publish( $postid ) {

$api_key = API-KEY;
$workflow_id = WORKFLOW-ID;
$email_id = EMAIL-ID;
$email = get_post_meta( get_the_ID(), 'customer_email', true );

$args = array(
    'method' => 'POST',
    'headers' => array(
        'Authorization' => 'Basic ' . base64_encode( 'user:'. $api_key )
    ),
    'body' => json_encode(array(
            'email_address' => $email
    ))
);
$response = wp_remote_post( 'https://' . substr($api_key,strpos($api_key,'-')+1) . '.api.mailchimp.com/3.0/automations/' . $workflow_id . '/emails/' . $email_id . '/queue/' . md5(strtolower($email)), $args );

$body = json_decode( $response['body'] );

}
add_action( 'pending_to_publish', 'email_on_publish' );
add_action( 'draft_to_publish', 'email_on_publish' );

1 Ответ

0 голосов
/ 27 марта 2019

Обновление: это было решено.Были две проблемы под рукой.

  1. Мне не нужно указывать md5 (strtolower ($ email)) в конце URL-адреса сообщения.
  2. Mailchimp требует, чтобы вы отправляли все предыдущие электронные письма в рабочем процессе наПользователь, прежде чем добавлять их в автоматизацию. Это делало все мои тесты бесполезными, пока я не узнал об этом.

Спасибо за понимание, сам!

...