Tag "wp_register_style"

  • Adicionando bibliotecas javascript ao seu tema ou plugin

    Normalmente quando se está desenvolvendo um tema ou um plugin você sente a necessidade de utilizar alguma biblioteca em javascript para facilitar a realização de determinada tarefa. A maneira mais fácil é sem dúvida utilizando a tag ‘<script>’ no corpo do seu arquivo. Agora imagine que todos os desenvolvedores que utilizam jquery resolvam adicionar as chamadas à biblioteca no corpo de seus plugins. Usuários que possuam vários plugins ativos provavelmente terão uma baita dor de cabeça mais cedo ou mais tarde quando esses plugins causarem algum conflito.

    Como não podia deixar de ser, o WordPress já tem uma solução para os nossos problemas. Uma função chamada ‘wp_enqueue_scripts’ que é responsável por enfileirar e ordenar a chamada das bibliotecas, evitando assim a duplicação de arquivos e, possibilitanto, o carregamento das dependências antes.

    A primeira coisa que você deve fazer é registrar a biblioteca para que o WordPress saiba que ela existe. Isso deve ser feito utilizando a seguinte função:

    wp_register_script($handle, $src, $deps = array(), $ver = false)

    O parâmetro obrigatório ‘$handle’ é o identificador único da biblioteca, o nome pelo qual o WordPress saberá quem é quem no conjunto de bibliotecas disponível. Em seguida vem o ‘$src’, que informa o endereço do arquivo, também obrigatório. Caso esse arquivo tenha alguma dependência, esta deve ser informadas em ‘$deps’ no formato de array, onde cada item do array é uma dependência a ser satisfeita. Essas dependências são informadas pelo ‘$handle’ das respectivas dependências. E por último (e menos importante) ‘$ver’ é a versão do script.

    Não é possível registrar um script que já esteja registrado. Caso você tente, seu script será ignorado. Mas se for realmente necessário, você pode remover um script anterior para adicionar o seu. Isso pode acontecer quando você desenvolve para versões mais antigas do WP. Para remover um script utilize:

    wp_deregister_script($handle)

    Onde ‘$handle’ é o identificador do script que você deseja remover.

    Depois de definidos, os scripts e suas dependências, você deve informar quais scripts devem ser carregados e onde eles serão carregados. Para a primeira questão, use:

    wp_enqueue_script($handle, $src = false, $deps = array(), $ver = false)

    Apesar de todos os parêmetros dessa função, o único obrigatório é o ‘$handle’ que informa qual o script será carregado. Os outros parâmetros são exatamente iguais aos parâmetros do wp_register_script e funcionam da mesma forma. A resposta pra isso é que se o script definido pelo $handle não estiver registrado o WordPress utiliza o atual.

    Pronto! Agora só falta informar onde o script deve ser carregado. Nos temas, basta colocar a chamada ‘wp_queue_script’ no template onde a biblioteca será utilizada e o ‘wp_head’ faz o resto. Assim, se você pretende usar a biblioteca jquery nos resultados das buscas, adicione ao search.php a linha:

    &lt;?php wp_enqueue_script('jquery'); ?&gt;

    Já na área administrativa você precisa criar uma função que carregue o script e adiciona-la à ação ‘init’, por exemplo:

    function load_scripts()
    {
    wp_enqueue_script('jquery');
    }
    &nbsp; 
    add_action('init', 'load_scripts');

    É isso… essa explicação também se aplica aos estilos você só precisa mudar as funções para ‘wp_register_style’, ‘wp_deregister_style’ e ‘wp_enqueue_style’ respectivamente. E para conferir os scripts e estilos que o WordPress carrega por padrão, confira o arquivo script-loader.php na pasta wp-includes.

    continue reading