J’ai cédé les droits de ce plugin (Avril 2016). Merci de suivre les liens ci-dessous pour vous rendre sur la documentation officielle.

Présentation du plugin   Documentation

logo

Si vous souhaitez utiliser la boîte de dialogue d’Adblock Notify sur une liste de pages données, c’est désormais possible depuis la version 1.1 grâce à l’ajout du hook an_prepare.

Ce hook intervient au moment où les paramètres du plugin sont injectés dans le DOM. Les options étant sérialisées en JSON pour être facilement récupérées en Javascript, on peut donc les modifier facilement après que le JSON a été généré. On peut ainsi modifier les paramètres récupérés par Javascript grâce à une expressions régulières (REGEX).

Le filtre suivant est très simple d’utilisation, vous n’avez qu’à le copier dans votre thème et spécifier les IDs des pages sur lesquelles vous souhaitez activer la modal box.

	function filter_an_prepare($content){
		//get current page ID outside the loop
		$pageId = get_queried_object_id();
		$pageList = array('123','1234'); //page ID list

		if(in_array($pageId,$pageList)){
	
			//CSS
			wp_enqueue_style('an_style');
		
			$content = preg_replace('/\"anOptionChoice\"\:\"(.?)\"/i', '"anOptionChoice":"2"', $content);
			$content =preg_replace('/\"anOptionCookie\"\:\"(.?)\"/i', '"anOptionCookie":"2"', $content);

		}
		return $content;
	}
	add_filter('an_prepare','filter_an_prepare');

Vous pouvez aussi n’afficher la modal box que sur certains types de pages :

function filter_an_prepare($content){
 
        if( is_page() || is_single() ){
    
            //CSS
            wp_enqueue_style('an_style');
        
            $content = preg_replace('/\"anOptionChoice\"\:\"(.?)\"/i', '"anOptionChoice":"2"', $content);
            $content =preg_replace('/\"anOptionCookie\"\:\"(.?)\"/i', '"anOptionCookie":"2"', $content);
 
        }
        return $content;

    }
add_filter('an_prepare','filter_an_prepare');

Pour plus d’infos sur ce dernier snippet, je vous invite à lire cette page du codex : is_singular()

Evidemment, peu importe les options du plugin, si vous avez désactivé l’option « Boîte de Dialogue ou Redirection », la boîte de dialogue apparaîtra dans tous les cas sur les pages dont vous avez renseigné les IDs.

Si vous ne connaissez pas Adblock Notify 😉

 

Article rédigé parBrice CAPOBIANCO

Autodidacte passionné par WordPress. J'aime apprendre et créer pour ensuite partager !

Coorganisateur des Meetups WordPress Rennes et fondateur de bweb.
Partager cet article