Intereting Posts
Неверные имена файлов в параметрах load-scripts.php Получить количество категорий родительских категорий для пользовательской таксономии Использование одного slug / post-name для нескольких страниц Как преобразовать необработанный URL в гиперссылку? Использовать ajax-запрос для загрузки боковой панели Могу ли я принудительно сменить пароль? Создать виджет на панели управления, отображающий пользовательское поле пользователя? Что означает «category__in» в запросах? is_plugin_active () неверно возвращает true В цикле пользовательского типа сообщения отобразите первый пользовательский таксономический термин Проблема «Разрешенная память» Две установки wordpress mu, одинаковые настройки / плагины / темы? Глобальная проблема установки Wp-cli-ssh Поврежденное навигационное меню? Как использовать if ($ wp_query-> query_vars == 'pagethatdontexist') без получения 404? Как подавить 404

Изменения Customizer.js не распознаются

Я экспериментировал с API-интерфейсом Theme Customizer, и я пытаюсь настроить предварительный просмотр в реальном времени для изменений, внесенных в Customizer.

Этот параметр, который я использую, отлично работает при использовании атрибута refresh, но когда я пытался использовать postMessage, у меня возникла проблема. Я написал необходимые строки кода, чтобы настроить работу с предварительным просмотром в реальном времени, но мой браузер не распознает сделанные изменения (и сохраненные) в файле customizer.js.

Настройка, которую я использую:

$wp_customize->add_setting( 'dvekocky_header_title', array( 'default' => esc_html__('Simple, Reliable and Awesome.', 'dvekocky' ), 'type' => 'theme_mod', 'transport' => 'postMessage' )); 

Код JS:

 ( function( $ ) { // Site title and description. wp.customize( 'blogname', function( value ) { value.bind( function( to ) { $( '.navbar-brand a' ).text( to ); } ); } ); wp.customize( 'blogdescription', function( value ) { value.bind( function( to ) { $( '.site-description' ).text( to ); } ); } ); // Header text color. wp.customize( 'header_textcolor', function( value ) { value.bind( function( to ) { if ( 'blank' === to ) { $( '.site-title, .site-description' ).css( { 'clip': 'rect(1px, 1px, 1px, 1px)', 'position': 'absolute' } ); } else { $( '.site-title, .site-description' ).css( { 'clip': 'auto', 'color': to, 'position': 'relative' } ); } } ); } ); wp.customize( 'dvekocky_header_title', function( value ) { value.bind( function( to ) { $( '.intro-section h1' ).text( to ); } ); } ); wp.customize( 'dvekocky_header_subtitle', function( value ) { value.bind( function( to ) { $( '.intro-section h5' ).text( to ); } ); } ); } )( jQuery ); 

Код JS, проверенный в браузере:

 ( function( $ ) { // Site title and description. wp.customize( 'blogname', function( value ) { value.bind( function( to ) { $( '.site-title a' ).text( to ); } ); } ); wp.customize( 'blogdescription', function( value ) { value.bind( function( to ) { $( '.site-description' ).text( to ); } ); } ); // Header text color. wp.customize( 'header_textcolor', function( value ) { value.bind( function( to ) { if ( 'blank' === to ) { $( '.site-title, .site-description' ).css( { 'clip': 'rect(1px, 1px, 1px, 1px)', 'position': 'absolute' } ); } else { $( '.site-title, .site-description' ).css( { 'clip': 'auto', 'color': to, 'position': 'relative' } ); } } ); } ); } )( jQuery ); 

Короче говоря, скрипты ведут себя так, как будто никаких изменений в ней не было, хотя я их сохранил и могу видеть, когда я открываю файл в текстовом редакторе.

Надеюсь, я достаточно хорошо описал свою проблему и надеюсь, что некоторые из вас могут мне помочь. Я не сомневаюсь, что проблема тривиальна, но я просто не могу понять это.

PS: Когда я использовал метод обновления для предварительного просмотра изменений, все прошло гладко. Теперь я все еще могу внести изменения, но я могу их видеть только при сохранении и публикации их через Customizer, а затем вручную перезагрузить страницу.

Solutions Collecting From Web of "Изменения Customizer.js не распознаются"

Прошло некоторое время с тех пор, как вы написали, но у меня была такая же проблема, и ваш вопрос позволил мне решить ее, поэтому спасибо! Я сошел с ума, пытаясь понять это. Я работаю из Underscores, поскольку он выглядит так, как вы, и исправление заключалось в изменении номера версии скрипта.

Когда вы вставляете в очередь свой скрипт customizer.js (около нижней части inc / customizer.php в подменю), измените номер версии на сегодняшнюю дату или завтра, a la '20160215'. Мой был 20130508 ранее, но как только я его изменил, текущая версия скрипта была загружена, и мои пользовательские элементы управления были подвержены воздействию JavaScript.