В дочерней теме также создал папку js, скопировал туда external.js, изменил. А как его подключить, чтобы он загружался после external.js родительской темы?
Вы уверены, что хотите получить конфликты?
Просто скопировали, не подключали?
Почитайте описание функций wp_enqueue_script
, get_template_directory_uri
и get_stylesheet_directory_uri
Сейчас подключил wp_enqueue_script('external', get_stylesheet_directory_uri() . '/js/external.js' );
Естественно, дочерний грузится раньше.
А вот про конфликты я как-то не подумал. А возможно ли отключить external.js родительской темы и подключить его только из дочерней?
А возможно ли отключить external.js родительской темы и подключить его только из дочерней?
Если родительская тема это позволяет.
Найдите где этот скрипт подключается (скорее всего в functions.php, но проверьте везде) и если есть проверка существования функции, то перепишите её в дочке как Вам нужно.
Модератор
Yuri
(@yube)
1. Порядок вызова обработчика хука можно изменить. См. https://developer.wordpress.org/reference/functions/add_action/
2. Повторный вызов wp_enqueue_script() с тем же хендлером переопределяет источник скрипта. Можно, опять же, использовать wp_deregister_script() чтобы наверняка.
Разобрался, как отключить. Фишка в том, что для отключения external.js надо отключить custom.js, они связаны
wp_enqueue_script( 'store-externaljs', get_template_directory_uri() . '/js/external.js', array('jquery'), '20120206', true );
if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) {
wp_enqueue_script( 'comment-reply' );
}
wp_enqueue_script( 'store-custom-js', get_template_directory_uri() . '/js/custom.js', array('store-externaljs') );
Проблема в том, что подключить их вместе уже не получается, или тот, или тот. Поэтому решил работать с external.js в родительской теме. Будет обновляться тема-буду править. Ну а когда стану умнее, сделаю как надо))