WordPress : Comment passer des paramètres dans l’URL d’une page
Lorsque vous développez un site WordPress, il est courant de vouloir passer des paramètres dans l’URL d’une page. Par exemple, si vous souhaitez afficher des résultats filtrés sur une page, vous pouvez passer des variables pour définir les critères de recherche. Il existe différentes manières de passer des variables dans l’URL d’une page WordPress, mais dans cet article, nous allons nous concentrer sur la méthode la plus simple et la plus efficace.
Passer des variables avec $_GET
La manière la plus classique de passer des variables dans l’URL d’une page WordPress consiste à utiliser la méthode $_GET. Pour ce faire, il suffit d’ajouter les variables dans l’URL sous la forme suivante : https://mon-site-wordpress.com/?variable1=toto&variable2=tata. Vous pouvez ajouter autant de variables que vous le souhaitez en les séparant par des « & ». Vous pouvez ensuite récupérer la valeur de ces variables en utilisant la superglobale $_GET dans votre code PHP :
Cependant, cette méthode a des limites. Tout d’abord, elle ne permet pas de sécuriser les variables passées dans l’URL. En effet, l’utilisateur peut modifier les paramètres dans l’URL et ainsi potentiellement modifier le comportement de votre application. De plus, cette méthode ne permet pas de définir des variables propres à WordPress, ce qui peut être problématique si vous voulez ajouter des fonctionnalités spécifiques à votre thème ou à votre plugin.
Passer des variables avec add_query_arg
Pour pallier à ces limites, WordPress met à disposition une fonction pratique : add_query_arg. Cette fonction permet de construire l’URL en ajoutant les variables dans l’URL de manière sécurisée. Pour ce faire, vous devez définir les variables dans un tableau associatif et passer ce tableau en paramètre de la fonction add_query_arg. Vous pouvez ensuite afficher l’URL avec la fonction site_url() et la fonction esc_url() pour sécuriser l’URL. Voici un exemple :
Ainsi, l’URL construite sera la suivante : https://mon-site-wordpress.com/?variable1=toto&variable2=tata. Vous pouvez ensuite utiliser la méthode $_GET pour récupérer les variables comme précédemment.
Définir des variables propres à WordPress
Si vous souhaitez définir des variables propres à WordPress, il est recommandé d’utiliser la fonction get_query_var(). Pour ce faire, vous devez d’abord ajouter les variables que vous allez utiliser dans votre thème en utilisant le filtre query_vars dans le fichier functions.php de votre thème :
Vous pouvez ensuite utiliser la fonction get_query_var() pour récupérer les valeurs des variables définies. Si la variable existe, sa valeur sera affichée. Sinon, la valeur par défaut sera affichée à la place. Voici un exemple :
Dans cet exemple, nous récupérons la valeur de la variable « variable1 » en utilisant la fonction get_query_var(). Si la variable existe, sa valeur sera affichée. Sinon, la valeur par défaut « valeur par défaut » sera affichée à la place.
En bref…
Passer des variables dans l’URL d’une page WordPress peut être très pratique pour personnaliser le comportement de votre site ou de votre application. Cependant, il est important de le faire de manière sécurisée et en utilisant des variables propres à WordPress. La méthode la plus simple et la plus efficace consiste à utiliser la fonction add_query_arg pour construire l’URL en toute sécurité et la fonction get_query_var() pour récupérer les variables définies dans WordPress.
Si cet article vous a aidé, si vous avez des questions ou des améliorations à proposer, n'hésitez pas à me laisser un commentaire en bas de page !