-->

Script anti adblock e simili per siti e blog

Su internet esistono siti che espongono molti banner e popup pubblicitari in maniera invasiva e fastidiosa che non hanno nessuna inerenza e utilità sul contenuto degli articoli e post in cui sono presenti, per questo ovvio motivo sono nati plug-in e estensioni per browser che ne impediscono la visualizzazione come AdBlock, Noscript e altri simili.
Nessuno nega l' utilità di questi piccoli plugin ma, purtroppo, a subirne i lati negativi sono anche i piccoli siti e blog che si mantengono solo grazie ad un paio di banner non invasivi che per la maggior parte sono di molta utilità agli utenti perchè inerenti con l' argomento di cui si discute nei vari post. Per questo motivo la maggior parte dei siti e blog non riesce più a pagarsi le spese di gestione e quindi è costretto a chiudere tutto e non essere più online.

Molti non copiscono che bloccando qualsiasi pubblicità si blocca anche la libertà e qualità intelletuale su internet permettendo solo ai grandi servizi di imporre le propie idee ma se almeno gli utenti disattivasero questi plugin per quei siti di qualità che espongono al massimo un paio di banner si potrebbe impedire l' uso ecessivo dei banner o simili sostenendo quei siti che non ne fanno un uso ecessivo e invasivo.

Purtroppo per ora non esiste nulla che possa costringere a visualizzare la pubblicità dato che si dovrebbe modificare alcune impostazioni del browser per farlo e quindi non sarebbe una cosa del tutto legale. Le soluzione che per ora funzionano consistono nel rilevare la peresenza di adblock o plugin simili per poter poi chiedere all' utente di disattivarlo.

Quali sono le soluzioni per consigliare gli utenti di disattivare AdBlock o simili?


1) PRIMA SOLUZIONE
La soluzione più semplice per capire se un plugin impedisce la visualizzazione dei nostri banner è controllare se il div dove è contenuto il banner abbia un altezza 0 dato che le varie estensioni semplicemente nascondono il banner. Procediamo quindi inserendo il nostro script del banner pubblicitario in un determinato div:

    <div class="rilevoAd">
       <!-- Codice Annuncio Pubblicitario Qui -->
    </div>

poi scarichiamo il file jquery.min.js e inseriamolo sul nostro server o in altro file hosting tipo dropbox per avere un caricamento del file più veloce e inseriamo questo codice prima del tag </head> nel codice della pagina ovviamente sostituendo la parte in rosso con il link del file:

<script type="text/javascript" src="http://nome del nostro sito/jquery.min.js"></script>


Ora se vogliamo che quando rileva AdBlock o simili reidirizzi in un altra pagina magari con la richiesta di disattivare il plugin o altro inseriamo la seguente funzione:

<script type="text/javascript">
    function rilevamentoAd() {
        if ($('.rilevoAd').height() == 0){
             // cosa fare se è stato rilevato software che nasconde l'annuncio:
            location.href="http://nome del nostro sito.com/pagina dove reidirizzarlo.html";
                 }
    }
    $(rilevamentoAd);
</script>

se vogliamo invece far semplicemente apparire una scritta dove avrebbe dovuto apparire il nostro banner possiamo fare in questo modo:

    <script type="text/javascript">
        function rilevamentoAd() {
           if ($('.rilevoAd').height() == 0){
                 // cosa fare se è stato rilevato software che nasconde l'annuncio:
                 var el = document.getElementById("rilevoAd");
                 el.innerHTML = "<p id='Testo'> qui scrivete il testo che volete</p>"
                     }
        }
        $(rilevamentoAd);
    </script>

<div id="rilevoAd"></div>

ovviamente con  id='Testo' tramite css potete cambiare colore, grandezza e altro del testo che visualizzerà quando rileva il plugin. Invece <div id="rilevoAd"></div> è il div dove apparirà il vostro messaggio, potete inserirlo dove volete nella pagina.
Questi sono solo due esempi su come implementare il codice ma è possibile modificarlo a secondo di ciò che volete.


2) SECONDA SOLUZIONE
Una seconda soluzione e rilevare direttamente se il plugin è installato e agire di conseguenza.
Create un file di nome ad esempio adframe.js e al suo interno inserite

    adblock = false;

e caricatelo sul vostro server oppure su un servizio di file hosting tipo dropbox.
Ora come nella prima soluzione inserite il banner pubblicitario in un div:

    <div class="rilevoAd">
       <!-- Codice Annuncio Pubblicitario Qui -->
    </div>

Successivamente inserite il codice seguente se è possibile prima del tag </body> sostituendo il link in rosso con il vostro:

    <script type="text/javascript">
    <!--
    var adblock = true;
    //-->
    </script>
    <script type="text/javascript" src="http://nome del sito/adframe.js"></script>
    <script type="text/javascript">
    <!--
    if(adblock) {
         var a=confirm('ATTENZIONE! Abbiamo rilevato un blocco per la pubblictà! Rimuovilo per continuare!');
             if(a){
             setTimeout("location.reload(true);",0);
             } else {
             setTimeout("location.reload(true);",0);
             }
    }
    </script>

Con questo script se rileva AdBlock apparirà una scritta con due pulsanti che permetteranno di ricaricare la pagina dopo che l' utente ha disattivato il plugin, se non lo disattiva ricaricando la pagina ovviamente ricomparirà la finestra con il messaggio. Come per la prima soluzione anche questo script può essere modificato secondo le nostre esigenze modificando la parte:

if(adblock) { inserisci qui il tuo codice per il messaggio }

nella parte in rosso ovviamente dovrai inserire la parte di codice che vuoi a secondo di ciò che vuoi ottenere.

Un altra soluzione alternativa è fare in modo che quando riscontra che è attivo adblock faccia comparire un banner statico con ovviamente un link referral, in questo modo quando nasconderà la pubblicità dinamica comparirà un banner pubblicitario statico anche se sicuramente meno remunerativo poichè questo tipo di banner sono in prevalenza pay per lead ma è sempre meglio di niente.
Solo come esempio potreste fare in questo modo ma, si può modificare anche i precedenti script detti per fare in modo che faccia la stessa cosa. Dopo aver fatto i primi passaggi della seconda soluzione sostituite la parte di script con all' interno if(adblock) con questo:  

<script language="javascript" type="text/javascript">
         $(document).ready(function () {
             if (typeof (adblock) == 'undefined') {
                 $("#rilevoAd").html("<a target='_blank' href='http://www. il vostro link referral.com/'><img border='0' src='http://immagine banner alternativa.gif' /></a>");
             }
             else {
                 $("#rilevoAd").html("");
             }
         });
    </script>

quest' ultimo per certe tipologie di siti potrebbe non funzionare ma è solo un esempio su come potreste implementare il codice.

Esistono altre soluzioni ma queste si possono definire le più semplici, in quest' altro articolo ad esempio ne elenco alcuni script adti- adblocking specifici per Google Adsense ma, se ne conoscete altre non esitate a suggerirle.

2 commenti:

  1. Per aggirare questi blocchi, invece, come si può fare?

    RispondiElimina
    Risposte
    1. purtroppo non ci sono soluzioni attuabili per aggirare interamente questi blocchi, unica soluzione è questa citata oppure, al massimo, al posto del testo di avviso che appare, ci puoi mettere un semplice banner di immagine e link

      Elimina
Posta un commento

Inserite il vostro nick name se volete una risposta altrimenti non si saprà a chi rispondere. Se inserite link verrà considerato spam e il commento non pubblicato.