tratando de poner en cola el script en wordpress

4

He leído la sección del códice en wp-enqeue, pero todavía estoy luchando.

Básicamente, me gustaría que lo siguiente se muestre correctamente en el área de widgets de mi tema (en cada página):

<link rel="stylesheet" type="text/css" href="/wp-content/uploads/social_counter/css/styles.css" />
<link rel="stylesheet" type="text/css" href="/wp-content/uploads/social_counter/css/tipTip.css" />

<div id="social_counter">
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script><scripttype="text/javascript" src="/wp-content/uploads/social_counter/js/jquery.tipTip.minified.js"></script>
<script type="text/javascript" src="/wp-content/uploads/social_counter/js/social_counter.js"></script>
</div>

Creé un widget de texto en el que pegué el código, pero rompe algunas cosas en la plantilla, ya que es probable que haya un conflicto, ya que el tema y / u otros complementos ya han cargado jquery.

¿Podría alguien mostrarme la mejor forma de hacer esto con wp_enqueue y dónde pegar el código siguiente (functions.php of theme?)?

Gracias.

He intentado lo siguiente:

if(!is_admin()){
wp_deregister_script( 'jquery' );
wp_register_script( 'jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js');
wp_enqueue_script('custom_script',get_bloginfo('wpurl').'/wp-content/uploads/social_counter/js/jquery.tipTip.minified.js',false);
wp_enqueue_script('custom_script',get_bloginfo('wpurl').'/wp-content/uploads/social_counter/js/social_counter.js',array('jquery'),'1.4.2',false);
}

Parece que se cargan dos de los scripts cuando veo la fuente de la página, pero no el jQuery de Google, y el contenido no se muestra ...

ahora tengo lo siguiente, todavía nada (se muestran dos scripts, pero no Google jquery):

wp_deregister_script( 'jquery' );
wp_register_script( 'jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js');
wp_enqueue_script( 'jquery' );
wp_enqueue_script('custom_script',get_bloginfo('wpurl').'/wp-content/uploads/social_counter/js/jquery.tipTip.minified.js',false);
wp_enqueue_script('custom_script',get_bloginfo('wpurl').'/wp-content/uploads/social_counter/js/social_counter.js',array('jquery'),'1.4.2',false);

Última edición ... (realmente deseo que el desbordamiento de pila adopte un sistema de subprocesos fácil de usar mroe: /)

function add_scripts(){
// Load jQuery
if ( !is_admin() ) {
   wp_deregister_script('jquery');
   wp_register_script('jquery', ("http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"), false);
   wp_enqueue_script('jquery');
}
// Your Scripts
wp_enqueue_script('custom_script',get_bloginfo('wpurl').'/wp-content/uploads/social_counter/js/jquery.tipTip.minified.js',false);
wp_enqueue_script('custom_script',get_bloginfo('wpurl').'/wp-content/uploads/social_counter/js/social_counter.js',array('jquery'),'1.4.2',false);
}
add_action('init','add_scripts');
    
pregunta vulgarbulgar 22.03.2011 - 00:55

3 respuestas

1

En realidad, ya no tiene que preocuparse por conflictos con las páginas de administración. Hay un gancho "wp_enqueue_scripts" que garantiza que no se llame a los scripts en las páginas de administración.

De WP Codex:

<?php
function my_scripts_method() {
  wp_deregister_script( 'jquery' );
  wp_register_script( 'jquery',    'http://ajax.googleapis.com/ajax/libs/jquery/1.6/jquery.min.js');
  wp_enqueue_script( 'jquery' );
}    

add_action('wp_enqueue_scripts', 'my_scripts_method');
?>

Pero si necesita un núcleo jQuery (o un complemento) personalizado para las páginas de administración, deberá usar el enlace de "inicio" con el condicional! admin.

    
respondido por el Anthony 27.09.2011 - 17:57
3

Echa un vistazo a este enlace:

5-tips-for-using-jquery-with-wordpress

Puede agregar los scripts llamando a una función en functions.php .

Aquí hay un ejemplo de cómo hacer esto:


function add_scripts(){
        wp_register_script('scriptName', 'Path to the script'); //Register script
        wp_enqueue_script('jquery'); 
        wp_enqueue_script('scriptName'); //adding script

    }
    add_action('init','add_scripts'); //calling function in init

También este link ser de ayuda.

EDIT:

Prueba este

function add_scripts(){
// Load jQuery
if ( !is_admin() ) {
   wp_register_script('jquery', ("http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"), false);
   wp_enqueue_script('jquery');
}
// Your Scripts
wp_register_script('script1', get_bloginfo('url').'/wp-content/uploads/social_counter/js/jquery.tipTip.minified.js');
wp_register_script('script2',get_bloginfo('url').'/wp-content/uploads/social_counter/js/social_counter.js',array('jquery'),'1.4.2',false);
wp_enqueue_script('script1');
wp_enqueue_script('script2');
}
add_action('init','add_scripts');
    
respondido por el Dijo David 22.03.2011 - 05:45
1

El mejor lugar es en functions.php .

Ejemplo :

wp_enqueue_script("name", ("path/to/file"), false);

La matriz falsa encolará la secuencia de comandos en el encabezado, donde definirá wp_header(); . Si lo establece en verdadero, encolará la secuencia de comandos en su pie de página donde definirá wp_footer();

Editar :

wp_enqueue_script('yourscriptname', get_bloginfo('stylesheet_directory') . '/js/jsyourscript.js');

En tu publicación revisada tienes este código

if(!is_admin()){
wp_deregister_script( 'jquery' );
wp_register_script( 'jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js');
wp_enqueue_script('custom_script',get_bloginfo('wpurl').'/wp-content/uploads/social_counter/js/jquery.tipTip.minified.js',false);
wp_enqueue_script('custom_script',get_bloginfo('wpurl').'/wp-content/uploads/social_counter/js/social_counter.js',array('jquery'),'1.4.2',false);
}

Tenga en cuenta que ha colocado los 2 scripts que desea poner en cola dentro de la declaración condicional de que si no admin - haz esto -

Esta puede ser la razón por la que no parece funcionar para ti.

Editar 2

// Load jQuery
if ( !is_admin() ) {
   wp_deregister_script('jquery');
   wp_register_script('jquery', ("http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"), false);
   wp_enqueue_script('jquery');
}
// Your Scripts
wp_enqueue_script('custom_script',get_bloginfo('wpurl').'/wp-content/uploads/social_counter/js/jquery.tipTip.minified.js',false);
wp_enqueue_script('custom_script2',get_bloginfo('wpurl').'/wp-content/uploads/social_counter/js/social_counter.js',array('jquery'),'1.4.2',false);

Lo limpié un poco, volvió a poner el jQuery en la declaración condicional y también lo puso en falso.

Además, cada nuevo script que usted ponga en cola debe tener un nombre único . Los dos tuyos se llaman script_usuario

    
respondido por el Daryl 22.03.2011 - 01:53

Lea otras preguntas en las etiquetas