Hi Chorpita,
could you point us to a webpage where to see the issue?
Thank you,
Jason
Hi Jason,
Here is a post with the issue.
http://141.2.95.202/einkaufsmanagement/?p=135
Details:
Agreement works as follows:
1. Author embeds attribute id=”agreement” in the <a>
HTML tag
2. Plugin then appears to replace href=”http://…” with href=”#” in the <a..> tag to somehow (how?) intercept the link click event.
3. This messes up SlimStat’s download tracking (not a surprise) since the click event is not handled normally by the browser or intercepted by SlimStat. It gets intercepted by the agreement component and SlimStat never gets a change to log the download.
If I inspect the source code, I see the “tracking” attribute for that link is set to false. That’s probably because by the time the javascript tracker inspects that link to see if it should be tracked or not, the other plugin is removing the HREF attribute, as you mentioned. When Slimstat inspects it, it doesn’t find the HREF, and so it skips it.
I don’t see any easy solution to this issue, other than telling the other plugin’s developer to not touch the HREF attributes and implement the overlay in a different way.
Cheers,
Jason
Yes. Great analysis. This is what I expected. I don’t have a lot of time for this as I am changing jobs soon. So I am telling my customer to choose between perfect stats and no agreement plugin or less than perfect stats with agreement plugin. Thanks for the help!
Hi @chorpita,
I am not aware about wp slimstat plugin.
However if you are having only one agreement popup in your website then you can add slimstat tacking code to agree button in popup.
May be this will help.
Thanks
Pranav Pathak
First of all, thank you Pranav for responding! That’s very kind!
I am sure that if I could understand the PHP code that I could add a logging call into the agreement plugin. There are two problems though.
1. I don’t have a lot of time to figure this out.
2. This website will not be maintained by me in a few weeks and, as such, I cannot expect the future admin to be writing PHP code.
It appears that the agreement plugin is replacing the href attribute in the <a… tag with the “#” string. It then uses this for javascript event handling to throw up the agreement window. The agreement window then dynamically decides whether to show the download based on user agreement (yes or no). Ideally I would call the SlimStat logger with the proper parameters when the download occurs in the agreement code. But I would not know how to do this. Why? (1) I don’t know how to call the logger. (2) I don’t know what fields need to be passed.
Hi Chorpita,
you would need to add some inline code to the link, an onclick attribute that invokes the tracker. However I’m not sure you can manipulate that HTML code without editing Agreement’s source code.
Best,
Jason