Возможно ли изменить значение без перезагрузки окна редактирования в Customizer?

Я добавила свои собственные настройки для изменения шрифта.

Это код который у меня получился.

$wp_customize->add_setting( 'calendar_title_font', array(
    'default'           => '',
    'sanitize_callback' => 'skyrocket_text_sanitization',
    'transport'         => 'postMessage',
) );

$wp_customize->add_control( new Skyrocket_Google_Font_Select_Custom_Control( $wp_customize, 'calendar_title_font', array(
    'label'       => __( 'Font Family', 'blah' ),
    'section'     => 'calendar_title',
    'input_attrs' => array(
        'font_count' => '20',
        'orderby'    => 'popular',
    ),
) ) );

JS код

  wp.customize( 'calendar_title_font', function( value ) {
    value.bind( function( to ) {
        $('h2.toolbar-title')
            .css('font-family', to );
    } );
} );

selective refresh

$wp_customize->selective_refresh->add_partial( 'calendar_title', array(
    'selector' => 'h2.fc-toolbar-title',
    'settings' => 'calendar_title_font',
    'container_inclusive' => false,
    'render_callback' => function() {
        echo get_setting( 'calendar_title_font' );
    },
) );

Что я делаю не так? Мне нужно чтобы при изменении шрифта обновлялась только та часть, где собственно и находится title. Но у меня все равно обновляется все окно редактирования кастомайзера. Видимо что-то не так с selective_refresh, я не могу уловить что именно.

Спасибо за помощь.


Ответы (0 шт):