Как я могу связать JS-скрипт с моим заголовочным файлом? - PullRequest
0 голосов
/ 12 июня 2019

Я хочу добавить JS-скрипт с jQuery в файл заголовка в Wordpress. Его функция - затемнять фон элемента, представляющего страницу, каждый раз, когда кто-то нажимает на нее.

Я пытался добавить его с помощью плагинов и через файл functions.php. Ни один из способов не сработал. Я вставил код в functions.php моей дочерней темы, из-за чего моя страница вообще не работала, даже после удаления кода, поэтому мне пришлось восстанавливать сайт с помощью резервной копии. После этого я добавил функцию с wp_enqueue_script, которая тоже не работала. К счастью, после удаления кода мой сайт снова заработал. Я не добавил его через header.php сам файл, потому что прочитал, что это может вызвать проблемы для сайта.

Итак, мой вопрос: Есть ли способ связать JS-скрипт с header.php? Может быть, без использования functions.php?

Редактировать : добавлен код, используемый для functions.php

function my_theme_scripts_function() {

wp_enqueue_script( 'myscript', get_stylesheet_directory_uri() . '/js/myscript.js');

}

add_action('wp_enqueue_scripts','my_theme_scripts_function');

Я заменил get_template_directory_uri() на get_stylesheet_directory_uri(), так как я добавляю это в дочернюю тему. Я получил это из этого урока: https://www.collectiveray.com/wp/tips/add-javascript-to-wordpress

1 Ответ

1 голос
/ 12 июня 2019

Вам следует использовать файл functions.php вашей дочерней темы, чтобы предотвратить изменение, перезаписывающее ваши изменения.

Отвечая на ваш вопрос, wp_enqueue_script - посмотрите на 5-й аргумент $in_footer, он должен быть установлен на true, таким образом, ваш скрипт будет загружен в заголовок.

wp_enqueue_script( string $handle, string $src = '', array $deps = array(), string|bool|null $ver = false, bool $in_footer = false )
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...