WordPress : Enregistrer une zone de widget lorsqu’une option de thème a été enregistrée ?
Est-il possible d’enregistrer une zone de widgets et des barres latérales lorsqu’une option a été sélectionnée et enregistrée dans un panneau d’options de thème ?
J’utilise un framework appelé redux mais je ne suis pas trop sûr que cela puisse être accompli car je ne sais pas s’il existe un crochet qui serait disponible pour enregistrer la zone/le menu du widget.
Solution n°1 trouvée
En functions.php
écrivant ce code
function my_optionally_widgets()
{
$option = get_options('wantwidget');
if($option == 'yes')
{
register_widget('mywidget');
/* add other widgets for registration here */
}
}
add_action('widgets_init', 'my_optionally_widgets');
function my_optionally_sidebars()
{
$option = get_options('wantsidebar');
if($option == 'yes')
{
register_sidebar($args);
/* add other sidebars for registration here */
}
}
add_action('init', 'my_optionally_sidebars');
Rappelez-vous que Widget Areas
et Sidebars
sont exactement la même chose. Mais le code ci-dessus vous montre comment activer et désactiver les widgets et les barres latérales d’apparaître dans le tableau de bord.
Et voici comment vous les affichez sur le front-end :
$option = get_options('wantsidebar');
if($option == 'yes')
{
dynamic_sidebar($index);
}
0 commentaire