1) Talvez ligar para o estado api.ready, que pode resolver ter que chamar sua seção duas vezes
(function($, api){
api.bind( 'ready', function() {...
}
})(jQuery);
Eu vi uma nota no trac que dizia: "Observe que as APIs para controles adicionados dinamicamente e APIs para seções e painéis personalizados de modelo JS ainda não estão disponíveis no WordPress 4.2. Consulte # 30741." Lendo que trac termina com "provavelmente não para 4,5 agora", então seus esforços podem ser inúteis = (
2) Para referência, a API JS do wp_customize pode ser encontrada aqui . Este link pode ser útil também.
3) Eu não tenho representante suficiente para um terceiro link, mas você pode ver o Kirki.org, que é um framework auxiliar para campos customizadores. Kirki também é bastante ativo no Github.
4) No lado do PHP, você pode usar a opção "active_callback" em sua matriz de campo para apresentar campos dinamicamente.
$wp_customize->add_control( 'some_single_page_specific_option', array(
'label' => esc_html__( 'Single Page Option' ),
'section' => 'my_page_options',
'active_callback' => 'if_is_singular',
));
function if_is_singular(){
if( is_singular() ){
return true;
} else {
return false;
}
}
Boa sorte.