Редактор WordPress Редактировать страницу не отвечает - JQuery Ошибка? - PullRequest
0 голосов
/ 03 января 2019

Когда я иду редактировать свою страницу, я не могу открыть параметры экрана или переключиться между визуальным и текстовым режимами в редакторе.

Я пытался добавить

define('CONCATENATE_SCRIPTS', false);
define('SCRIPT_DEBUG', true);

в конфигурацию wp, ноэто не помогло

Мой скрипт загрузки jQuery:

function loadJquery()
{
    if ($hook != 'post-new.php' || $hook != 'post.php' ) {
        wp_register_script('siteJs',get_template_directory_uri() . 
'/js/site.js',array('jquery'),'1.4.1');
        wp_enqueue_script('siteJs'); // Enqueue it!
    }
}

Я получаю эту ошибку:

Uncaught TypeError: Невозможно прочитать свойство 'addEventListener' изnull

Ссылаясь на это:

(function() {
    var burger = document.querySelector('.navbar-burger');
    var menu = document.querySelector('.navbar-menu');
    burger.addEventListener('click', function() {
    burger.classList.toggle('is-active');
    menu.classList.toggle('is-active');
});

И когда страница находится там, она также вызывает эту ошибку:

Uncaught TypeError: Не удается прочитатьсвойство 'hasClass' из неопределенного
в HTMLDocument.(wp-auth-check.js: 101)

Ответы [ 2 ]

0 голосов
/ 03 января 2019

Я использовал

wp_print_scripts

для загрузки Jquery, когда, как сказал dafoxuk, я должен использовать

wp_enqueue_scripts()

Godbless You :)

0 голосов
/ 03 января 2019

Ошибка Uncaught TypeError: Cannot read property 'addEventListener' of null указывает, что burger не определено. Хотя, возможно, стоит проверить, должен ли site.js работать в WP Admin (где .navbar-burger даже не существует), прямое исправление - проверить, найден ли burger перед добавлением прослушивателя событий.

Это будет выглядеть так:

(function() {
var burger = document.querySelector('.navbar-burger');
var menu = document.querySelector('.navbar-menu');
if (burger != null && menu !=  null){
     burger.addEventListener('click', function() {
     burger.classList.toggle('is-active');
     menu.classList.toggle('is-active');
  });
}
})();
...