wp_enqueue_script - отсутствует путь к файлу в исходном коде отображаемой страницы "/" - PullRequest
0 голосов
/ 26 октября 2019

Я пытаюсь добавить javascript в нижний колонтитул WordPress страницы, используя wp_enqueue_script в файле функций дочерней темы.

Я никогда не делал этого раньше, поэтому я немного новичок в использовании wp_enqueue_script, ноЯ прочитал несколько похожих постов на форуме Stackoverflow, но не нашел ничего, что решило бы мою проблему. ,,в URL источника файла отсутствует символ "/" между частью пути get_theme_file_uri() и остальной структурой папок.

Я вставил этот код в файл функций:

function theme_enqueue_scripts() {
wp_enqueue_script( 'reactionform_js', get_stylesheet_directory_uri() . 'includes/js/reactionform_js.js');
}
add_action( 'wp_enqueue_scripts', 'theme_enqueue_scripts' );

.

Однако, когда я смотрю на исходный код отображаемой страницы, путь к файлу <script type='text/javascript' src='https://www.futureproofpromotions.com/wp-content/themes/Avada-Child-Themeincludes/js/reactionform_js.js?ver=5.2.4'></script> в котором отсутствует / между корневой папкой темы Avada-Child-Theme и папкой includes? К сведению: Сообщение об ошибке в инструментах разработчика Chrome гласит: Failed to load resource: the server responded with a status of 404 (Not Found)

Я также попробовал get_theme_file_uri() вместо get_stylesheet_directory_uri(), но не повезло! Я также попытался добавить косую черту (/), например, get_stylesheet_directory_uri() . '/'. 'includes/js/reactionform_js.js', но тоже не повезло.

Буду признателен, если кто-нибудь сможет объяснить, как решить эту проблему.

Также. ,,насколько я понимаю, я считаю, что мне нужно включить , '' , '', true после аргумента $ scr, чтобы JavaScript отображался в нижнем колонтитуле вместо заголовка. Однако в тот момент, когда я включаю эти аргументы, различные части страницы не загружаются, поэтому оставьте их, пока я, по крайней мере, не заставлю скрипт загружаться где-то на странице. Как только я получу это, я добавлю те аргументы, которые, надеюсь, завершат задачу.

Я использую: Wordpress: v 5.2.4 Avada Тема: v 6.1 php версия 7.2.23 Версия MySQL: 5.5.62

Большое спасибо

Фил

1 Ответ

1 голос
/ 26 октября 2019

Это должно работать для вас (у меня есть этот конфиг в моей теме, и он работает), попробуйте вместо этого использовать функцию get_template_directory_uri():

wp_enqueue_script( 'reactionform_js', get_template_directory_uri() . '/includes/js/reactionform_js.js', array(), false, true );

с последним параметром (нижний колонтитул) до trueВы можете увидеть подпись функции:

function wp_enqueue_script( $handle, $src = '', $deps = array(), $ver = false, $in_footer = false ) {

Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...