it-roy-ru.com

Удаление не родных настроек настройщика из дочерней темы

Для удаления настроек, элементов управления и разделов настройщика мы можем просто использовать такие методы удаления, как это:

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

Что я заметил, так это то, что нет способа удалить настройку родительской темы, поэтому нет собственной настройки самого Wordpress. На самом деле, попытка удалить blogdescription возможна.

Я не могу найти документацию об этом. Что я игнорирую?

1
lucgenti

Я много думаю о том, как работают ваши темы, но functions.php дочерней темы запускается до functions.php родительской темы , поэтому все, что загружено родительскими функциями, не будет доступно для удаления. Вам нужно подключить свою функцию, чтобы она запускалась позже.

add_action('after_setup_theme', 'remove_custom');

Хотя вам нужно возиться с переменной $wp_customize. Было бы проще подключить хук customize_register с номером с высоким приоритетом, чтобы ваш код выполнялся после родительского регистрационного кода.

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