Desenvolvimento de plugins WordPress-como usar jQuery / JavaScript?
apenas começou a desenvolver um plugin para WordPress, queria usar algum JQuery na interface de Administração Plugin.
Como posso incluir e ligar ao JQuery?por exemplo, numa página HTML normal, eu incluiria apenas a biblioteca JQuery, e depois chamaria a este programa:
$(document).ready(function(){
alert('Hello World!');
});
Como posso fazer isto num ficheiro de Plugin WordPress PHP?
2 answers
Em Primeiro Lugar, você sempre tem que usar um invólucro sem conflito no Wordpress, para que o seu código seria como:
jQuery(document).ready(function($){
alert('Hello World!');
});
Em segundo lugar, é uma boa prática colocar o seu javascript em arquivos externos, e em um plugin Wordpress você incluiria aqueles como este:
wp_register_script( 'my_plugin_script', plugins_url('/my_plugin.js', __FILE__), array('jquery'));
wp_enqueue_script( 'my_plugin_script' );
Isto inclui o seu script, e configura o jQuery como uma dependência, por isso o Wordpress irá carregar automaticamente o jQuery se ainda não estiver carregado, certificando-se de que só está carregado uma vez, e que está carregado antes dos seus plugins roteiro.
E se você só precisa do script nas páginas de administração, você pode carregá-lo condicionalmente usando o Wordpress add_ Action handlers:
add_action( 'admin_menu', 'my_admin_plugin' );
function my_admin_plugin() {
wp_register_script( 'my_plugin_script', plugins_url('/my_plugin.js', __FILE__), array('jquery'));
wp_enqueue_script( 'my_plugin_script' );
// do admin stuff here
}
Não é recomendado usar a sua própria versão jquery.
Então ... em vez disso, deve usar isto:WordPress inclui a sua própria versão de jquery e muitos outros JS semelhantes arquivos, que foram todos rigorosamente testados com WP e muitos dos plugins mais comuns. A fim de proporcionar a melhor compatibilidade e experiência para nossos usuários, pedimos que você não embalar o seu próprio (especialmente Não uma versão mais antiga) e em vez disso use wp_ enqueue_ script () para puxar a versão do WordPress.
wp_enqueue_script('jquery')