I would like to apply event tracking in google analytics to facebook ments made on our website via the facebook social plugin (iframe widget), but I can't seem to find a way to attach the event. I would prefer if the solution was jquery based, but honostly I'm open to most any suggestion.
I would like to apply event tracking in google analytics to facebook ments made on our website via the facebook social plugin (iframe widget), but I can't seem to find a way to attach the event. I would prefer if the solution was jquery based, but honostly I'm open to most any suggestion.
You can use the Facebook JS SDK Event Subscriptions, specifically ment.create
event callback.
FB.Event.subscribe('ment.create', function(response){
_gaq.push(["_trackEvent", "Facebook Comment", "Posted", response.mentID]);
});
You can also track ment deletions with ment.remove
FB.Event.subscribe('ment.remove', function(response){
_gaq.push(["_trackEvent", "Facebook Comment", "Deleted", response.mentID]);
});
I've tested this, and both appear to work reliably. If you have any troubles, try clearing your cache, and be sure to check the Facebook SDK Status Page.
If you're loading the Facebook SDK asynchronously, those calls should be placed in the asynchronous callback function. If you're loading the SDK synchronously, they just need to be placed lower on the page than the SDK.
The response object will have the mentID
, as well as a href
attribute, and a parentCommentID
, if the ment is a reply to another ment (otherwise, it is set to undefined
).
The href
attribute's purpose is unclear, but its contents appear to be posed as follows:
http://www.facebook./plugins/ments_v1.php?app_id=[your-app-id]&xid=276&url=[encodeURIComponent(location.href)]