tentando enfileirar script no wordpress

4

Eu li a seção do códice no wp-enqeue, mas ainda estou lutando.

Basicamente, eu gostaria de obter o seguinte para exibir corretamente na área de widget do meu tema (em todas as páginas):

<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>

Eu criei um widget de texto no qual colei o código, mas ele quebra algumas coisas no modelo, pois provavelmente há um conflito, já que o jquery já está carregado pelo tema e / ou outros plug-ins.

Alguém poderia me mostrar como melhor forma isso usando wp_enqueue, e onde colar o código subseqüente (functions.php do tema?)?

Obrigado.

Eu tentei o seguinte:

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 dois scripts são carregados quando vejo a fonte da página, mas não o google jquery, e o conteúdo não é exibido ...

agora eu tenho o seguinte, ainda nada (dois scripts aparecem, mas não o 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 edição .. (Eu realmente gostaria que o estouro de pilha adotasse um sistema de thread fácil de usar): /)

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');
    
por vulgarbulgar 22.03.2011 / 00:55

3 respostas

1

Na verdade, você não precisa mais se preocupar em entrar em conflito com as páginas do administrador. Há um gancho "wp_enqueue_scripts" que garante que os scripts não sejam chamados nas páginas de administração.

Do Codex do WP:

<?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');
?>

Mas se você precisar de um núcleo (ou complemento) personalizado do jQuery para as páginas de administração, você precisará usar o gancho "init" com o! admin condicional.

    
por Anthony 27.09.2011 / 17:57
3

Veja este link:

5 dicas para usar o jquery com wordpress

Você pode adicionar os scripts chamando uma função em functions.php .

Aqui está um exemplo de como fazer isso:


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

Além disso, este link seja útil.

EDITAR:

Tente este aqui

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');
    
por Dijo David 22.03.2011 / 05:45
1

O melhor lugar está em seu functions.php .

Exemplo:

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

O array falso enfileira o script no cabeçalho, onde você define wp_header(); - Se você defini-lo como true, ele enfileira o script no seu rodapé onde você define wp_footer();

Editar :

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

Na sua postagem revisada, você tem esse 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);
}

Por favor note que você colocou os 2 scripts que você deseja enfileirar dentro da declaração condicional que se não admin - faça isso -

Este pode ser o motivo pelo qual ele não parece funcionar para você.

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);

Limpou um pouco, colocou a jquery de volta na declaração condicional e também colocou false nela.

Além disso, cada novo script que você enfileira precisa ter um nome exclusivo . Ambos são chamados custom_script

    
por Daryl 22.03.2011 / 01:53

Tags