Así que estoy usando Starkers para basar mi próximo tema de WP y me he encontrado con un pequeño problema, estaba incluyendo mi propia versión de jQuery en el header.php
archivo, pero al inspeccionar mi sitio usando Firebug noté que jquery se estaba descargando dos veces. investigué un poco y noté que no solo estaba incluyendo el archivo sino también la wp_head()
función.
Al tratar de solucionar el problema, noté un comentario en el archivo de encabezado, que se originó en el tema Twenty Ten:
/* Always have wp_head() just before the closing </head>
* tag of your theme, or you will break many plugins, which
* generally use this hook to add elements to <head>, such
* as styles, scripts, and meta tags
*/
Así que aquí está mi problema, tengo la impresión de que el archivo jQuery debe configurarse antes que cualquier otro archivo que quiera usarlo y eso wp_head()
debería ser lo último en el <head>
elemento, ahora estoy un poco confundido ya que me pregunto si debería Lo coloco wp_head()
en la parte superior para que el archivo jQuery incluido en WP se use para todos mis complementos, a pesar de que dice que no lo haga.
Comenté la línea jQuery en la wp_head()
función, pero es necesaria para la página de administración, así que tuve que volver a ponerla.
También me gustaría usar (al menos experimentar) con el uso de la versión Google CDN de jQuery, ¡pero no quiero incluirlo dos veces!
Espero que comprenda lo que estoy tratando de explicar, cualquier sugerencia sobre cómo puedo resolver este problema sería muy apreciada. También agradecería cualquier consejo sobre cómo maneja sus archivos JavaScript con el archivo de encabezado.
¡Gracias!
fuente
Respuestas:
A partir de la redacción de su pregunta, debe agregar scripts escribiendo
<script>
etiquetas en su plantilla. Agregue sus propios scripts a travéswp_enqueue_script()
de su plantillafunctions.php
, estableciendo adecuadamente las dependencias en jQuery, ywp_head()
agregará los scripts por usted.Vea la página del códice para más información.
fuente
<script>
etiqueta, esta es la alternativa que estaba buscando, ¡muchas gracias! :-)'template_redirect'
lugar de'init'
.is_admin()
.get_header()
, haciéndolo enfunctions.php
cola en cada página que no sea necesaria. Si tengo uno global, lo pongo en colaheader.php
antes de quewp_head()
se llame. De esa manera, las colas son donde esperarías que estuvieran en el<head>
Sugiero echar un vistazo a 5 consejos para usar jQuery con WordPress . Entre otras cosas, muestra el código necesario para cargar jQuery desde la biblioteca de Google:
También puede consultar el complemento Usar bibliotecas de Google .
fuente
template_redirect
lugar deinit
.Si bien @tnorthcutt es correcto, debe eliminar correctamente el jquery nativo de WP si desea cargar el suyo propio, es seguro que se encontrará con problemas al cargar una versión de jquery diferente que el núcleo de WP. Tanto el núcleo como los complementos dependen de que esté allí. Entonces, si no actualiza su tema con el jquery más nuevo cada vez que se actualiza WP, su sitio puede fallar.
El siguiente código se asegurará de que su tema siempre cargue la versión correcta de jquery, primero buscando qué versión está utilizando WP y luego cargando esa desde Google:
fuente