Por alguna razón, no puedo obtener las páginas de wordpress/wp-admin para ejecutar un archivo de consulta simple. Solo funciona si anulo el registro de jquery en mi functions.php dentro de mi carpeta de temas, pero luego debo volver a registrar todos los archivos jquery.ui por separado, lo cual es tedioso. Estoy usando la instalación multisitio de wordpress 3.0. Estoy tratando de no tocar los archivos principales de wp.
Se mostrará en la fuente y los enlaces al archivo están bien, pero no ejecutará el script. aquí está lo que tengo en mi functions.php:
function my_script() {
if (!is_admin()) {
wp_deregister_script('jquery');
wp_register_script('jquery', 'https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js', false, '1.4.4');
wp_enqueue_script('jquery');
wp_enqueue_script('custom_script', get_bloginfo('template_url').'/js/myScript.js', array('jquery'));
}
if(is_admin()){
wp_enqueue_script('custom_admin_script', get_bloginfo('template_url').'/js/admin_script.js', array('jquery'));
} }
add_action(‘init’, ‘mi_script’);
Aquí está mi archivo jquery (admin_script.js):
$(document).ready(function(){
alert("Hello"); });
cualquier ayuda sería genial.
Tenga en cuenta que el jQuery incluido con WordPress se ejecuta en Modo sin conflicto hasta donde yo sé, lo que significa que no hay $
pero en lugar jQuery
. Probablemente por eso canceló el registro del jQuery incorporado y usó el de Google CDN. Ese probablemente no se ejecuta en ese modo.
No tengo ninguna experiencia con wordpress, por lo que podría cometer un error aquí. Solo asegúrese de que el jQuery incorporado esté disponible y cargue su script.
function my_script() {
if (!is_admin()) {
wp_enqueue_script('custom_script', get_bloginfo('template_url').'/js/myScript.js', array('jquery'));
}
if(is_admin()){
wp_enqueue_script('custom_admin_script', get_bloginfo('template_url').'/js/admin_script.js', array('jquery'));
}
}
Cambie su admin_script.js para usar jQuery
en cambio $
.
jQuery(document).ready(function(){
alert("Hello");
});
Vea si eso funciona para usted. Si te gusta usar $
probablemente podrías escribir var $ = jQuery;
en la parte superior de su admin_script.js.
-
jQuery en realidad se pasa a sí mismo como el primer argumento de la función que llama, por lo que puede escribir
jQuery(document).ready(function ($) { $('#blah').click(); });
etc. O, por supuesto, simplementejQuery(function ($) { $('#blah').click(); });
.– alnorte29
26 de junio de 2015 a las 15:58
Nuevo Usuario
Puedes hacer esto
<?php add_action( 'admin_enqueue_scripts', 'function_name' ); ?>
Esto se puede usar así
<?php
add_action( 'admin_enqueue_scripts', 'load_custom_script' );
function load_custom_script() {
wp_enqueue_script('custom_js_script', get_bloginfo('template_url').'/js/custom-script.js', array('jquery'));
}
?>
Para obtener más ayuda, consulte la documentación. aquí
Dado que nunca estoy seguro de que no habrá ningún conflicto, utilizo esto de forma predeterminada, ya que se encarga de ello y puedo apegarme a mi normal: (función ($){ // todo mi jQuery usando $(‘selectors ‘) })(jQuery);
– David Hobs
25/09/2012 a las 21:37