Intereting Posts

Hook customize_preview_init не инициализирует вещь

Создание моей собственной темы для сайта wordpress с нуля в первый раз.

Итак, я получил свои functions.php , js/customizer.js , inc/customizer.php

Решил сделать заголовок сайта (или все, на что обычно ссылается blogname ).

Итак, сначала я настроил customizer.php

 function mytheme_customize_register( $wp_customize ) { $wp_customize->get_setting( 'blogname' )->transport = 'postMessage'; if ( isset( $wp_customize->selective_refresh ) ) { $wp_customize->selective_refresh->add_partial( 'blogname', array( 'selector' => '.site-title', 'container_inclusive' => false, 'render_callback' => function(){ bloginfo( 'name' ); } ) ); } } add_action( 'customize_register', 'mytheme_customize_register' ); function mytheme_customizer_live_preview() { wp_enqueue_script( 'mytheme-themecustomizer', //Give the script an ID get_template_directory_uri().'/js/customizer.js',//Point to file array( 'jquery','customize-preview' ), //Define dependencies '', //Define a version (optional) true //Put script in footer? ); } add_action( 'customize_preview_init', 'mytheme_customizer_live_preview' ); 

Связанный javascript выглядит так:

 /** * Live-update changed settings in real time in the Customizer preview. */ ( function( $ ) { var api = wp.customize; console.log("in main function body"); // Site title. api( 'blogname', function( value ) { console.log("api.'blogname'"); value.bind( function( to ) { console.log("changing value'"); } ); } ); } )( jQuery ); 

Затем в functions.php

 <?php /** * Load CSS */ function tathouse_load_css() { wp_enqueue_style( 'style', get_stylesheet_uri() ); } add_action( 'wp_enqueue_scripts', 'tathouse_load_css' ); function tathouse_theme_setup(){ add_theme_support( 'customize-selective-refresh-widgets' ); } add_action( 'after_setup_theme', 'tathouse_theme_setup' ); /** * Customizer additions. */ require get_template_directory() . '/inc/customizer.php'; 

Итак, все выглядит во всех популярных обучающих программах, которые для меня отображаются как google ( https://codex.wordpress.org/Plugin_API/Action_Reference/customize_preview_init )

Но есть пара проблем, которые я получил

1) В javascript не запускались функции console.log (похоже, что инициализация js не выполнена), поэтому, поскольку

2) даже ты add_partial нет никаких признаков этого значка карандаша, как здесь введите описание изображения здесь

3) Если я использую customize_controls_enqueue_scripts istead customize_preview_init console.logs запускаются, но выглядит так, что контекст не предназначен для предварительного просмотра темы, поэтому, а не вариант (я знаю, что есть некоторые workaroudns, но это не чистый способ)

Итак, что здесь не так?

UPD

1) Первая проблема решается … Включая <?php wp_footer(); ?> <?php wp_footer(); ?> в моем footer.php 2) Исправлена ​​ошибка в селекторе, а вторая проблема решена

Solutions Collecting From Web of "Hook customize_preview_init не инициализирует вещь"