WordPress : Comment stocker et obtenir des variables dans un widget ?

Publié par Jean-Michel le

Sur la page d’index, je charge un widget personnalisé que je charge avec.

Ce widget personnalisé est une copie de WP_Widget_Categories avec Les seules modifications que j’ai apportées sont qu’au lieu d’une liste déroulante ou d’une liste, j’ai maintenant un formulaire avec quelques radioboxes (avec des noms de catégories) et un bouton d’envoi.

Quand je coche par exemple « category-1 » et que j’appuie sur le bouton submit je vais sur la page « mysiteurl/category/category-1 » et je vois tous les posts de la page catégorie 1.

Dans la page category.php (tout comme dans ma page index.php). J’ai le même widget de bouton radio personnalisé implémenté avec :

  <?php dynamic_sidebar( 'custom-category-checkbox-menu' ); ?>

Le problème est quand j’arrive à la page de catégorie. La case radio indiquant « catégorie 1 » doit être cochée car vous êtes sur cette page. J’ai besoin d’avoir une sorte de variable pour que je puisse savoir dans quelle catégorie je suis maintenant.

Mes premiers essais ont été :

  1. Créez un champ caché dans ma fonction form() de mon widget et passez-y des variables. Mais cela semble désordonné.

  2. J’ai déjà donné mes boutons radio name= »cat » et value= »$categoryid » pour accéder à la bonne page de catégorie. J’ai donc essayé $var_value = $_GET[‘cat’] ; Cela n’a pas non plus fonctionné.

Quelle est la bonne façon de faire cela?

Solution n°1 trouvée

Pourquoi ne pas créer un widget personnalisé pour votre sidebar ? Vous pouvez gérer « tout » ce que vous voulez depuis le code PHP de votre widget, et l’afficher en fonction.

Catégories : Wordpress

Jean-Michel

Jean-Michel est en charge de la partie blog du site. Il met en place la stratégie de contenu et répond aux questions fréquentes sur Wordpress.

0 commentaire

Laisser un commentaire

Avatar placeholder

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