Heyo,
est-il possible d'afficher différentes Customizersettings
dans le Customizer API
lorsque vous basculez entre deux pages et que chaque page a une Template
différente?
Par exemple: Page-1
a le template Custom-Sidebar
et Page-2
a le template Custom-Fullwidth
. Maintenant, quand je vais dans Customizer
et que je vois Page-1
je veux montrer Settings
pour Sidebar
et quand je passe à Page-2
je veux montrer Settings
pour Images et autres ... mais pas pour la variable Sidebar
! (Si ça a du sens)
Merci d'avance!
L'API de personnalisation propose des méthodes active_callback
à la fois sur les classes de contrôle et d . Fondamentalement, vous utilisez une fonction conditionnelle ou personnalisée pour déterminer si un contrôle ou une section est affiché à l'utilisateur.
Si vous souhaitez qu'une section apparaisse uniquement pour les pages, vous feriez quelque chose comme ceci:
$wp_customize->add_section( 'wpse_283821_acme_pages', array(
'title' => 'Acme Pages Section',
'description' => 'Edit the ACME Pages Sections',
'priority' => 20,
'active_callback' => 'is_page',
) );
Ou peut-être une fonction personnalisée spécifique:
$wp_customize->add_section( 'wpse_283821_acme_special_page', array(
'title' => 'Acme Special Page Section',
'description' => 'Edit the Specific ACME Page Section',
'priority' => 20,
'active_callback' => 'wpse_283821_acme_custom_callback',
) );
wpse_283821_acme_custom_callback() {
// Do your logic here
if ( true !== $condition ){
return false;
} else {
return true;
}
}
Il y a quelques questions sur WPSE avec de bonnes réponses montrant des utilisations intéressantes de active_callback
. Vérifiez celui-ci et celui-ci . Et il y a ce message avec un cas d'utilisation similaire au vôtre.
Je pourrais simplement les copier ici, mais j'estime que cela vaut la peine de jeter un coup d'œil à ces questions, réponses, commentaires et codes pour mieux comprendre.