Вот идея, файлы js и css в WP используют другую технику, чтобы выяснить, в каком порядке следует загружать файлы js \ css.
здесь функция
wp_enqueue_script('custom-js', get_stylesheet_directory_uri() . '/js/custom-js.js', array('js-handle-of-some-dependency','js-handle-of-some-other-dependency'), true);
Каждый скрипт имеет свой дескриптор, это первый аргумент этой функции, в вашем случае это custom-js
.
Основано на копании в коде плагина , это main js имеет дескриптор visual-portfolio
Таким образом, вы можете просто поставить в очередь свой скрипт с установкой его дескриптора в качестве зависимости.
И окончательное решение будет:
function register_scripts_and_styles() {
wp_enqueue_script( 'custom-js', get_stylesheet_directory_uri() . '/js/custom-js.js', array( 'jquery', 'visual-portfolio' ), '1', true );
}
add_action( 'wp_enqueue_scripts', 'register_scripts_and_styles' );
I ' Мы также добавили jquery
в качестве зависимости, так как, я полагаю, вы используете jQuery в своем js коде, вы можете удалить его, если нет.
Я также установил версию на '1'
- это версия строки запроса, которая будет применена к вашему JS коду, поэтому когда вы обновляете и перемещаете код в реальном времени, вы можете заставить браузеры пользователя загружать только одну sh одну изменяющуюся версию здесь.
И посмотрите последний аргумент true
, это означает, что ваш скрипт будет добавлен в нижний колонтитул.
Если вы Ваш код опирается не только на main.js
этого плагина, вам может понадобиться добавить больше зависимостей, так как этот плагин ставит в очередь кучу скриптов, полный список их смотрите в /wp-content/plugins/visual-portfolio/classes/class-assets.php
из строки 350, в конце register_scripts
метода класса определено в этом файле. Таким образом, вы действительно можете поместить точно все дескрипторы скрипта, на которые опирается ваш пользовательский код js, и WP определит правильный порядок связывания этих файлов со страницей для вас.
Удачная кодировка:)