web-dev-qa-db-fra.com

Suppression des paramètres de personnalisation non natifs d'un thème enfant

Pour supprimer des paramètres, des contrôles et des sections du personnalisateur, nous pouvons simplement utiliser les méthodes de suppression telles que:

function remove_custom($wp_customize) {
  $wp_customize->remove_setting('id');
  $wp_customize->remove_control('id');
  $wp_customize->remove_section('id');
}

Ce que j'ai remarqué, c'est qu'il n'y a aucun moyen de supprimer la personnalisation du thème parent, donc la personnalisation non native de Wordpress lui-même. En fait, essayer de supprimer la blogdescription est possible.

Je ne trouve pas de documentation à ce sujet. Qu'est-ce que j'ignore?

1
lucgenti

Je devine beaucoup sur le fonctionnement de vos thèmes mais, , le functions.php du thème enfant s'exécute avant le functions.php du thème parent __ Ainsi, tout élément chargé par les fonctions du parent ne pourra pas être supprimé. Vous devez accrocher votre fonction pour qu'elle s'exécute plus tard.

add_action('after_setup_theme', 'remove_custom');

Bien que vous ayez besoin de jouer avec la variable $wp_customize. Il serait plus facile de raccorder le crochet customize_register avec un numéro de priorité élevée afin que votre code s'exécute après le code d'enregistrement parent.

add_action( 'customize_register', 'remove_custom', 1000 );
2
s_ha_dum