Отслеживание событий ActiveCampaign с помощью Learndash Hook в Wordpress
Я немного новичок в PHP и wordpress (ужасное средство открытия), и я пытаюсь добавить некоторые функции к сайту электронного обучения, который я создал с помощью плагина LearnDash для Wordpress.
Один из способов отслеживания прогресса пользователей - ActiveCampaign. Отслеживание сайта установлено и отлично работает, но я пытаюсь зарегистрировать событие в AC, когда пользователь завершает курс. Для этого доступен крючок LearnDash (https://www.learndash.com/support/docs/developers/hooks-and-filters/), а фактический код события доступен на странице отслеживания Active Campaign.
В итоге я получил следующий код:
//learndash hook:
add_action("learndash_course_completed", sendEmail,5,1);
//defining user's email to use in tracking event code:
function sendEmail(){
$current_user = wp_get_current_user();
$userEmail = $user->user_email;
//Event Tracking code as per the Active Campaign Page - Account info omitted
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, "https://trackcmp.net/event");
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, array(
"actid" => "ACCOUNT ID NUMBER",
"key" => "TRACKING KEY NUMBER",
"event" => "EVENT NAME",
"eventdata" => "User Has Completed the course",
"visit" => json_encode(array(
// If you have an email address, assign it here.
"email" => $userEmail,
)),
));
$result = curl_exec($curl);
if ($result !== false) {
$result = json_decode($result);
if ($result->success) {
echo 'Success! ';
} else {
echo 'Error! ';
}
echo $result->message;
} else {
echo 'cURL failed to run: ', curl_error($curl);
}
};
Он не срабатывает, когда пользователь завершает курс, и я не уверен, что сделал не так. Наверное, что-то действительно очевидное. Какие-нибудь мысли?
Спасибо!
1 ответ
Нашел! Как идиот, я вызвал переменную $user, хотя на самом деле она была определена как $current-user.
Все хорошо!