Как и где передать переменные в кампанию в MailJet? - PullRequest
0 голосов
/ 10 мая 2019

Я пытаюсь автоматически создать черновик кампании с помощью MailJet api v3

  1. Я создал шаблон на их веб-сайте в формате MJML, простой (templateid $tId=829886;):
 <mj-raw> {% for products in var:product %} </mj-raw>
      <p>{%product.name %}</p>
      <p>{%product.price%}</p>
 <mj-raw>{% endfor %}</mj-raw>

Я также включил [[UNSUB_LINK_IT]] и [[UNSUB_LINK_EN]] из-за локали it_IT

В моем php-коде я тестирую:
$tId=829886;
$products=[
    ["name"=>'Product1','price'=>'free'],
    ['name'=>'Product2','price'=>'1 mil']
];
Черновик кампании
$body = [
    'Locale' => "it_IT",
    'Sender' => "MisterMailjet",
    'SenderEmail' => "s.s***i@***.p**",
    'Subject' => "Greetings from Mailjet",
    'ContactsListID' => "13",
    'Title' => "Friday newsletter".uniqid(),
    'EditMode' => 'tool2',
    'TemplateID'=>$tId,
    'Variables' => [
        'products' => $products
    ], ]; 
$response = $mj->post(Resources::$Campaigndraft, ['body' => $body]);
Я попытался передать переменные в $response = $mj->post(Resources::$CampaigndraftDetailcontent, ['id' => $cId, 'body' => $body]);, но всегда получаю

Неверный ввод json: объект "" -> "TCampaignDraft" не имеет свойства "Переменные"

Может кто-нибудь связать или показать мне пример $ Campaigndraft или $ CampaigndraftDetailcontent, где они передают некоторые переменные для цикла, я не могу найти что-либо онлайн.Я не уверен, возможно ли вообще передавать переменные в кампанию.Пожалуйста, любая помощь приветствуется

1 Ответ

0 голосов
/ 16 мая 2019

В настоящее время расширенный «язык шаблонов», используемый для персонализации, доступен только для так называемых транзакционных сообщений, но не для кампаний. Таким образом, ресурс /campaigndraft, используемый для создания Campaign, не распознает свойства «Variables» или «Vars», используемые для объявления переменных в вызове API Send.

Действительно, в руководстве здесь вы увидите, что

Язык шаблонов Mailjet доступен только для транзакционных сообщений.

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

Надеюсь, это поможет.

...