web-dev-qa-db-ja.com

WP カスタマイザ - ライブプレビューを防止する

ウィジェットフィールドがJS検証チェックに失敗した場合にカスタマイザプレビューでウィジェットが更新されないようにするにはどうすればよいですか。より一般的には、カスタマイザJS APIに関する実際の文書はありますか? (私は、いくつかの例や大まかな説明ではなく、実際の適切なAPIドキュメントを意味します)

6
Jayce53

このリンクにアクセスしてtransporter引数について読んでください。 https://codex.wordpress.org/Theme_Customization_API

それはあなたが探しているものですか?

これはあなたのための例です:

<?php

add_action( 'customize_register', 'my_customizer' );
function my_customizer($wp_customize){
    $wp_customize->add_section( 'my_section', 
        array(
            'title' => __( 'My Custom Section', 'mytheme' ), //Visible title of section
            'capability' => 'edit_theme_options', //Capability needed to Tweak
        )
    );
    $wp_customize->add_setting( 'my_setting', 
        array(
            'default' => 'option1', //Default setting/value to save
            'type' => 'theme_mod', //Is this an 'option' or a 'theme_mod'?
            'capability' => 'edit_theme_options', //Optional. Special permissions for accessing this setting.
            'transport' => 'postMessage', //What triggers a refresh of the setting? 'refresh' or 'postMessage' (instant)?
        ) 
    );
    $wp_customize->add_control(
        'my_control', 
        array(
            'label'    => __( 'My Custom Control', 'mytheme' ),
            'section'  => 'my_section',
            'settings' => 'my_setting',
            'type'     => 'radio',
            'choices'  => array(
                'option1'  => 'Option 1',
                'option2' => 'Option 2',
            ),
        )
    );
}
2