Conditions cacher un formulaire si Pays - if Show / Hide form ip country
Intermédiaire

Nous allons dans ce nouveau tutoriel apprendre à montrer ou cacher un formulaire Formidable Form par exemple, ou tout autre chose comme une DIV ou message, si le Pays détecté en géolocalisation est Canada.

Dans notre exemple si dessous nous allons montrer un shortcode formulaire Formidable Form si l’IP du visiteur est au Canada. Sinon on lui affiche un formulaire pour dire que les soumissions de ce formulaire ne sont pas autorisés.

La première des conditions c’est que nous allons apprendre à montrer l’IP du client puisque c’est cette valeur qui va être détecté pour faire marcher notre condition.

Afficher l’IP du client

<?php $ip = $_SERVER['REMOTE_ADDR']; echo $ip; ?>

Maintenant nous allons dans une fonction appeler par un fichier échange de données Json, une API de géolocaisation pour obtenir l’IP, le pays dont le client dépends. Ensuite nous allons mettre notre condition en disant que si le Pays du client est Canada, montre le shortcode du formulaire, sinon montre un message.

Cacher un formulaire si Nom de Pays – if Show / Hide form ip country

<?php // Fonction de données géolocalisées 
function resolveIP($ip) { 
	
	$string = file_get_contents("https://ipsidekick.com/{$ip}"); 
	$json = json_decode($string); return $json; } // On retourne la valeur de l'IP en appelant notre fonction 
	$ip = $_SERVER['REMOTE_ADDR']; 
	$json = resolveIP($ip); // Si le nom du pays de l'IP client est Canada affiche le formulaire 
	
	if ($json->country->name == 'Canada') {
	   echo do_shortcode('[formidable id=3]');
	}
	 
	// Sinon
	else {
		echo 'Seules les entreprises au Canada sont acceptées.';
	} 
}
?>

On va faire la même fonction mais cette fois-ci en utilisant le code du Pays en changeant la ligne 14 :

Cacher un formulaire si Code de Pays – if Show / Hide form ip country

<?php 
// Fonction de données géolocalisées 
function resolveIP($ip) { 
	$string = file_get_contents("https://ipsidekick.com/{$ip}"); 
	$json = json_decode($string); return $json; } // On retourne la valeur de l'IP en appelant notre fonction 
	$ip = $_SERVER['REMOTE_ADDR']; 
	$json = resolveIP($ip); // Si le code du pays de l'IP client est Canada (CA) affiche le formulaire 
	
	if ($json->country->code == 'CA') {
	   echo do_shortcode('[formidable id=3]');
	}
	// Sinon
	
	else {
	    echo 'Seules les entreprises au Canada sont acceptées.';
	} 
}
?>

A vous de choisir laquelle formule vous aimez le mieux.

NB : Faire une sauvegarde de votre thème, de votre fichier et/ou votre base de données avant d’ajouter ces fonctions tutoriels.

Leave a Reply

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>