o script enqueue não funcionará (o estilo enqueue funciona)

Para include um arquivo CSS e um arquivo JS, adicionei a functions.php :

 function my_theme_enqueue_styles() { wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css' ); } function my_theme_enqueue_scripts() { wp_enqueue_script( 'behavior', get_script_directory_uri() . '/behavior.js', array(), null, true ); } add_action( 'wp_enqueue_style', 'my_theme_enqueue_styles' ); add_action( 'wp_enqueue_script', 'my_theme_enqueue_scripts' ); 

Depois de fazer isso, eu salvei e encerrei o editor, voltei para o mesmo diretório de functions.php (este é o diretório do tema filho), o anúncio criou um novo arquivo, behavior.js .

Em behavior.js , eu adicionei, apenas para testar:

 alert('Hi'); 

Eu salvei, voltei para o meu site e fiz uma atualização completa, mas nenhum alerta aparece. Por que é que?

Solutions Collecting From Web of "o script enqueue não funcionará (o estilo enqueue funciona)"

Você está usando o gancho errado. wp_enqueue_scripts é o gancho correto para ambos:

 add_action( 'wp_enqueue_scripts', 'my_theme_enqueue_styles' ); add_action( 'wp_enqueue_scripts', 'my_theme_enqueue_scripts' ); 

Mas, como eles são o mesmo gancho, você pode apenas enqueuar ambos os arquivos no mesmo retorno de chamada:

 function my_theme_enqueue_assets() { wp_enqueue_style( 'parent-style', get_parent_theme_file_uri( 'style.css' ) ); wp_enqueue_script( 'behavior', get_theme_file_uri( 'behavior.js' ), array(), null, true ); } add_action( 'wp_enqueue_scripts', 'my_theme_enqueue_assets' ); 

Eu também usei as get_parent_theme_file_uri() e get_theme_file_uri() novas para obter os URLs do arquivo. get_parent_theme_file_uri() obterá o URI para o arquivo fornecido dentro do único tema pai, enquanto get_theme_file_uri() obterá o arquivo do tema atual e, se for um tema infantil, ele retornará ao tema principal se o arquivo não for existe no tema infantil.

Note que estes ainda precisam do caminho para o arquivo dentro do tema, se eles estiverem em uma pasta, por exemplo. get_theme_file_uri( 'path/to/file.js' );