1

カスタマイズ API を使用して既存の設定に「トランスポート」機能を追加する際に問題が発生しています。問題なく設定を追加および削除できますが、現在の設定にトランスポートを追加するには時間がかかるようです。js は問題なくロードされますが、「更新」メソッドは引き続き使用されます。

プラグイン内に「postMessage Transport」を追加できますか? テーマ内のこれらの呼び出しは正常に機能しました。

function __construct() {

    add_action( 'customize_register', array( $this, 'base_customize_register' ) );
    add_action( 'customize_preview_init', array( $this, 'base_customize_preview_js' ) );

}   

function base_customize_register( $wp_customize ) {
    $wp_customize->get_setting( 'blogname' )->transport         = 'postMessage';
    $wp_customize->get_setting( 'blogdescription' )->transport  = 'postMessage';
    $wp_customize->remove_section( 'static_front_page');
}

function base_customize_preview_js() {
    wp_enqueue_script( 'base_customizer', get_template_directory_uri() . '/js/customizer.js', array( 'customize-preview' ), '20131008', true );
}
4

2 に答える 2

0

タイミングの問題のようです。残念ながら、セクションはチェーンにまだ存在しないため、それらを操作しても目的の効果は得られません。テーマのデフォルト設定を処理するロジックを保持する必要がありました。

于 2013-11-07T02:06:03.303 に答える
0

私もまったく同じ問題を抱えていました。add_action 関数で優先度引数を使用してこれを解決しました。

add_action( "customize_register", "wpcb_theme_customize_register",999,1);
function wpcb_theme_customize_register($wp_customize){
    $wp_customize->get_section( 'title_tagline' )->priority = 999;
    $wp_customize->get_section( 'static_front_page' )->priority = 1000;
}

これが誰かに役立つことを願っています:)

于 2016-09-19T15:28:47.930 に答える