自定义程序css值中的选择性刷新不起作用

时间:2018-12-30 23:47:44

标签: css wordpress

我在开发主题时遇到困难。
我正在使用Envato,无法在wp_add_inline_style();enqueue style以外的任何地方输入CSS。
我直接使用预览自定义并添加部分刷新。

我有一个带有以下选项的设置菜单:

  • 布局A或B的选择
  • 布局背景颜色的选择

问题在于,背景颜色更改时布局也会更改。

有人可以解决吗?
代码段:customizer.php

function customizer_nav( $wp_customize ) {

// Section 

$wp_customize->add_section( 'navigasi_sett',
    array(
        'title' => __( 'Navigasi Primary', 'mocita' ),
        'priority' => 100, 
        'panel' => 'primary_panel',
    )
);


// Background
$wp_customize->add_setting( 'nav_background', 
    array(
        'default'   => '#0663cc',
        'transport' => 'postMessage',
        'sanitize_callback' => 'sanitize_hex_color',
    ) 
);



$wp_customize->add_control( new WP_Customize_Color_Control( $wp_customize, 'nav_background', 
     array(
         'label'    => __( 'Background Menus', 'mocita' ),
         'section'  => 'navigasi_sett',
         'settings' => 'nav_background',
     ) 
));


//  Navigasi layout
$wp_customize->add_setting( 'nav_layout',
    array(
         'default' => 'tes1',
         'transport' => 'postMessage',
         'sanitize_callback' => 'mocita_sanitize_radio_img',
    )
);

$wp_customize->add_control( new Mocita_Image_Radio( $wp_customize, 'nav_layout',
        array(
            'label' => __( 'Navigasi Layout', 'mocita' ),
            'section' => 'navigasi_sett',
            'choices' => array(
                'tes1' => array(  
                'image' => trailingslashit( get_template_directory_uri() ) . 'images/navigasi/tes1.png', 
                'name' => __( 'tes1', 'mocita' ) 
                ),
                'tes2' => array(  
                'image' => trailingslashit( get_template_directory_uri() ) . 'images/navigasi/tes2.png', 
                'name' => __( 'tes2', 'mocita' ) 
                )        
            )
        )
    ));

}

// selevtive_refresh
if ( isset( $wp_customize->selective_refresh ) ) {

// Navigasi Layout
$wp_customize->selective_refresh->add_partial( 'nav_layout', 
   array(
    'selector' => '#primary',
    'container_inclusive' => false,
    'render_callback' => 'nav_layout',
   )
); 
}

// callback nav_layout
function nav_layout() {
    $layout = get_theme_mod( 'nav_layout', 'nav1' ); 
    if ( $layout === 'nav1' ) {
        get_template_part( 'template-parts/navigasi/navigasi', 'primary1' );    
    } elseif ( $layout === 'nav2' ) {
        get_template_part( 'template-parts/navigasi/navigasi', 'primary2' );
    } 
}
?>

customize-preview.js
(function( $ ) {

// ( Navigasi ) Background 
wp.customize( 'nav_background', function( value ) {
    value.bind( function( to ) {
    $( '#menu' ).css( 'background', to );
});
}); 

} )( jQuery );

0 个答案:

没有答案