Agregar javascripts externos

20

¿Es posible agregar javascripts externos directamente al archivo .info de un tema?
por ejemplo, scripts [] = http://cdn.jquerytools.org/1.2.6/jquery.tools.min.js

JurgenR
fuente
¿Está buscando agregar la versión CDN de jQuery Tools a su tema, o está preguntando explícitamente si se puede hacer desde el archivo .info de un tema?
mpdonadio
Es explícitamente agregar javascript externo al archivo .info
JurgenR
¿Entonces quiso agregarlo al archivo .info y aceptó una respuesta que no habla sobre el archivo .info y muestra el método drupal_add_js?
mpdonadio
Sí, si no funciona en el archivo de información, estoy contento con la mejor solución posible.
JurgenR

Respuestas:

24

En el archivo template.php de su tema, use drupal_add_js () para el método de preproceso de la página (o un preproceso equivalente).

function hook_preprocess_page(&$vars) {
  drupal_add_js('http://cdn.jquerytools.org/1.2.6/jquery.tools.min.js', 'external');
}
drmonkeyninja
fuente
Recibo un error de JavaScript cuando uso esta función, cuando pongo el script dentro (pie de página) html.tpl.php está funcionando.
JurgenR
Que error ¿Drupal muestra el marcado de script correcto cuando usa esta función si verifica el código fuente?
drmonkeyninja
Agregar la matriz de opciones lo arregló. Supongo que fue un problema con el peso. drupal_add_js (' cdn.jquerytools.org/1.2.6/jquery.tools.min.js ', array ('type' => 'external', 'scope' => 'header', 'weight' => 10)) ; Thnx!
JurgenR
@Jurgen drupal_add_js()acepta también una cadena como segundo parámetro; en ese caso, se considera como el índice de "tipo" utilizado desde la $optionsmatriz. Si necesita establecer otras opciones, debe usar una matriz.
kiamlaluno
@drmonkeyninja ¿Cómo agregar JS en cualquier módulo .. ??
Nishant
2

El método para agregar javascript depende de para qué está agregando javascript. Hay diferentes formas de agregar js.

  • Al definir en el archivo theme.info.

  • Agregándolo en línea.

  • Agregar un archivo js externo.

Puede agregar un archivo de información js con esta simple línea de código

scripts[] = js/myscript.js

O puede usar la función php proporcionada por drupal drupal_add_js

Esta función le permite agregar fácilmente un archivo JavaScript o ayuda a configurar un código en línea para cualquier página de su tema y requiere 5 parámetros ( puede verlo en la referencia de la API ).

Hay una publicación detallada sobre esto aquí.

esafwan
fuente
2
no puede definir un JS externo en un archivo de información, aparentemente drupal.stackexchange.com/a/196874/12010
batigolix