Desta vez, estou lutando muito para incluir arquivos JavaScript na pasta de plugins.
Estou tentando criar um plug-in transferindo arquivos de widget do diretório de temas. Copiei o arquivo de widget, mas esse arquivo estava dependendo de um arquivo JavaScript, então criei uma pasta / js / no diretório do plugin. onde esses arquivos estão hospedados "jquery.repeatable.js"
Eu usei esse código, mas parece não incluir o arquivo js -
function Zumper_widget_enqueue_script()
{
wp_enqueue_script( 'my_custom_script', plugin_dir_url( __FILE__ ) . 'js/jquery.repeatable.js' );
}
add_action('admin_enqueue_scripts', 'Zumper_widget_enqueue_script');
Eu pesquisei isso no fórum- /programming/31489615/call-a-js-file-from-a-plugin-directory
Mas ainda assim isso não foi útil.
Estou resumindo minha pergunta. No diretório do meu plugin, há um arquivo js nesta pasta - / js /
Desejo incluir qual é o processo correto, também preciso registrar algo?
Há algo de errado com essa parte - 'admin_enqueue_scripts'
?
fonte
Respostas:
Seu código parece correto, mas ele carregará o script apenas na área administrativa, porque você está enfileirando o script em
admin_enqueue_scripts
ação .Para carregar o script no front-end, use a
wp_enqueue_scripts
ação (que não é a mesma quewp_enqueue_script()
função ):Além disso, esse script parece depender do jQuery, portanto, você deve declarar que a dependência ou o script pode ser carregado antes do jQuery e não funcionará. Além disso, eu recomendo fortemente declarar a versão do script. Dessa forma, se você atualizar o script para uma nova versão, o navegador o descarregará novamente e descartará a cópia que possa ter no cache.
Por exemplo, se a versão do script for 1.0:
Se você deseja carregá-lo na área de administração:
fonte
ATUALIZADA:
Use esse código
O terceiro parâmetro é declarar dependência e o quarto é definir a versão.
Defina o 5º parâmetro de
wp_enqueue_script()
comotrue
. Ou seja, esse arquivo será carregado no rodapé.fonte
wp_enqueue_script()
é declarar as dependências do script. O quinto parâmetro é o que você escolhe se deseja carregar o script no rodapé ou no cabeçalho. Enfim, não acho que o lugar para carregar faça alguma diferença.Eu normalmente uso o método plugins_url () para obter o enfileiramento.
fonte