How do you track outbound links for your web site, since the request is logged on the destination server, not yours?
相关问题
- React Native Inline style for multiple Text in sin
- Set BaseUrl of an existing Pdf Document
- 反爬能检测到JS模拟的键盘输入吗
- 有没有方法即使程序最小化也能对其发送按键
- Using relative links in Blogger
I don't like the redirect as described by Eric Tuttleman, as you unfortunately lose the 'search engine friendliness' of the link.
I handle this on a site I own by adding an onClick to my outgoing links, which fires a function which sends the link URL and a timestamp to my database. I then wrote a backend which retrieves the data, and lets me view it by such categories as 'Most clicked / 24h', 'Most clicked / 1w' etc.
I hope this helps.
You can add a quick JQuery script to the page that will track external links and can either redirect them to a file on your server that will track the link and then forward to it, or add an ajax request that will submit on click for external links, and track them that way.
See here: http://www.prodevtips.com/2008/08/19/tracking-clicks-with-jquery-and-google-analytics/
and here: http://www.justskins.com/development/how-to-track-clicks-on-outgoing-links/132
Add an onclick or onmousedown handler to the anchor tag. You can see many sites doing this, such as Google.
Method #1:
target="_blank"
,onclick
and Google Analytics EventsFormat your outgoing links with the following attributes:
<a href="http://www.example.com" target="_blank" onclick="trackOutgoing(this);">outgoing</a>
Define a javascript tracking function (requires google analytics to be loaded already):
Pros:
Cons:
onclick
is not guaranteed to execute (user or browser could terminate the main window)Method #2: Redirecting with Javascript and Google Analytics Callbacks
Format your outgoing links with the following attributes:
<a href="http://www.example.com" onclick="trackOutgoingAndRedirect(this); return false;">outgoing</a>
Define a javascript tracking function (requires google analytics to be loaded already):
Pros:
target="_blank"
Cons:
return false;
Method #3: Using a Redirect URL
Format your outgoing links with the following attributes:
<a href="/redirect?url=http://www.example.com">outgoing</a>
On your site you will need to implement a redirect script which is beyond the scope of this answer.
Your redirect script would most likely track the outgoing link and then redirect to the provided url.
Pros:
Cons:
On one system I've worked on, we ended up storing redirects in a database table and creating a redirect page that takes an id as an input. On our content pages, we link to the redirect page with an unique id from this table. Once the redirect page looks up the url via the id from the table, it then sends the client a redirect response, sending them to the ending page.
This does give us logging of external links, and as an added bonus, it makes mass changes to external urls a bit easier in some cases.