Come faccio a capire se un client web è il blocco delle pubblicità?
Domanda
Qual è il modo migliore per registrare le statistiche sul numero di visitatori che visitano il mio sito, che hanno impostato la loro browser per bloccare la pubblicità?
Soluzione
Dal momento che i programmi come AdBlock, in realtà mai richiesta, la pubblicità, si dovrebbe guardare i log del server per vedere se lo stesso utente accede a una pagina web, ma non ha accesso a un annuncio.Questo è supponendo che l'annuncio è sullo stesso server.
Se i tuoi annunci sono su un server separato, quindi vorrei suggerire che è impossibile farlo.
Il modo migliore per impedire agli utenti di bloccare la pubblicità, è quello di avere il testo inline pubblicità che sono generati dal server e propinata all'interno del codice html.
Altri suggerimenti
Aggiungere l'id utente per la richiesta per l'annuncio:
<img src="./ads/viagra.jpg?{user.id}"/>
in questo modo si può controllare ciò che gli annunci sono visibili agli utenti.
È necessario pensare a modi diversi in cui gli annunci vengono bloccati.La prima cosa da guardare è se sono in esecuzione noscript, così si potrebbe aggiungere uno script che dovrebbe verificare per che.
La prossima cosa è quello di vedere se essi stanno bloccando flash, un piccolo film dovrebbe fare.
Se si guarda il adblock sito, c'è qualche indicazione di come si fa il blocco:
Come si fa a nascondere gli elementi di lavoro?
Se si guarda più in basso la pagina, vedrete che convenzionale chrome tastatura non lavoro, quindi è necessario provare e analizzare l'alterata DOM.
AdBlock forum dice questo è utilizzato per rilevare AdBlock.Dopo qualche tweak è possibile utilizzare questo per raccogliere alcune statistiche.
setTimeout("detect_abp()", 10000);
var isFF = (navigator.userAgent.indexOf("Firefox") > -1) ? true : false,
hasABP = false;
function detect_abp() {
if(isFF) {
if(Components.interfaces.nsIAdblockPlus != undefined) {
hasABP = true;
} else {
var AbpImage = document.createElement("img");
AbpImage.id = "abp_detector";
AbpImage.src = "/textlink-ads.jpg";
AbpImage.style.width = "0";
AbpImage.style.height = "0";
AbpImage.style.top = "-1000px";
AbpImage.style.left = "-1000px";
document.body.appendChild(AbpImage);
hasABP = (document.getElementById("abp_detector").style.display == "none");
var e = document.getElementsByTagName("iframe");
for (var i = 0; i < e.length; i++) {
if(e[i].clientHeight == 0) {
hasABP = true;
}
}
if(hasABP == true) {
history.go(1);
location = "http://www.tweaktown.com/supportus.html";
window.location(location);
}
}
}
}
Suppongo che si potrebbe paragonare l'annuncio stampe con le pagine viste sul tuo sito web (che si può ottenere dal vostro software di analisi).