Thank you for posting about this @tudor really appreciate bringing that issue to my sight once again… almost forgot about the whole thing… I believe maybe at some point Klaviyo maybe made some change to their API which prevented the old plugin to not work, and since it has been quite long time never used them I had no clue at all.
Will be working on a solution to that will update you today.
Hello Yassine,
I was wondering if you had a chance to look at the code.
Any idea if it’s something that can be fixed soon. or should I look for another tool to make this work?
Really appreciate your help.
Thanks!
Hi Yassine! I just wanted to check with you - I setup the plugin to send the info to Klaviyo but none of my tests worked. Since I just installed it for the first time, I can’t say if there is a problem because something got changed since plugin got written or I did something wrong. I followed instructions, they are pretty straight forward. So, just wanted to double-check - are you aware of any changes? Thank you!
Hey Yassine. You can use the Klaviyo external subscribe link rather than the api which will not expose the private api Key. Let me know if this works for all
<script>
function send_to_klaviyo() {
var email="", fname="", lname="", phone="", city="", state="", country="", zip="";
var emailbox = document.getElementsByName("email")[0];
if (emailbox == null)
return; // no email :o
email = emailbox.value;
var fnamebox = document.getElementsByName("first_name")[0];
if (fnamebox != null)
fname = fnamebox.value;
var lnamebox = document.getElementsByName("last_name")[0];
if (lnamebox != null)
lname = lnamebox.value;
var phonebox = document.getElementsByName("phone")[0];
if (phonebox != null)
phone = phonebox.value;
var citybox = document.getElementsByName("city")[0];
if (citybox != null)
city = citybox.value;
var statebox = document.getElementsByName("state")[0];
if (statebox != null)
state = statebox.value;
var countrybox = document.getElementsByName("country")[0];
if (countrybox != null)
country = countrybox.value;
var zipbox = document.getElementsByName("zip")[0];
if (zipbox != null)
zip = zipbox.value;
var settings = {
"async": true,
"crossDomain": true,
"url": "https://manage.kmail-lists.com/subscriptions/external/subscribe",
"method": "POST",
"headers": {
"content-type": "application/x-www-form-urlencoded",
"cache-control": "no-cache"
},
"data": {
"g": "LISTID",
"$fields": "first_name,last_name,phone,city,state,country,zip,source",
"email": email,
"$first_name": fname,
"$last_name": lname,
"state": state,
"country": country,
"zip":zip,
"$source": "clickfunnels"
}
};
$.ajax(settings).done(function (response) {
console.log(response);
});
}
window.addEventListener("load", function() {
var divs = document.getElementsByTagName("div");
for (i = 0; i < divs.length; i++)
{
var div = divs[i];
if (div.getAttribute("data-title") == "optin button" || div.getAttribute("data-de-type") == "button") {
div.onclick = function() {
// Send the lead to Klaviyo
send_to_klaviyo();
};
}
}
});
</script>