2010-05-21 5 views
7

Je crée un nouveau thème Drupal.Thèmes drupal: comment puis-je inclure plusieurs fichiers css/fichiers js sur le fichier .info de mon thème?

Jusqu'à présent, j'avais seulement besoin d'inclure un seul fichier CSS et un seul fichier js. Donc, mon fichier theme.info avait quelque chose comme ceci:

stylesheets[all][] = css/style.css 
scripts[] = js/script.js 

Maintenant, je dois inclure jquery et jquery-ui afin d'utiliser une date de calendrier. Ceux-ci viennent avec 2 nouveaux fichiers javascript, et 1 fichier css additonal que je dois ajouter au site. Le formulaire de saisie du calendrier va être utilisé dans toutes les pages (sur un bloc latéral), donc je peux charger le css/javascript supplémentaire sur toutes les pages. Je pense que la chose la plus simple serait de les référencer sur le fichier .info lui-même.

Au début, j'essayé de les mettre juste là avec des espaces séparés:

stylesheets[all][] = css/style.css css/ui-lightness/jquery-ui-1.8.1.custom.css 
scripts[] = js/script.js js/jquery-1.4.2.min.js js/jquery-ui-1.8.1.custom.min.js 

Je vidé le cache et ... aucune drupal d'entre eux chargés. J'ai ensuite essayé de séparer chaque fichier avec une virgule et de rincer à nouveau le cache. Même résultat

J'ai parcouru quelques drupalpages, mais je n'ai pas trouvé comment ajouter plusieurs fichiers javascript/css sur un thème (ils semblent toujours ajouter seulement 1 de chaque). Alors, comment inclure plusieurs fichiers css/javascript sur le fichier .info?

Répondre

10

Chaque fichier doit sa propre ligne comme ceci:

stylesheets[all][] = css/style.css 
stylesheets[all][] = css/ui-lightness/jquery-ui-1.8.1.custom.css 
scripts[] = js/jquery-1.4.2.min.js 
scripts[] = js/reservations.js 
scripts[] = js/jquery-ui-1.8.1.custom.min.js 
+0

Cela fonctionne très bien. Merci pour la réponse rapide! – kikito

+0

Est-ce la même chose pour un fichier js externe? Comme http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js – russellmania

+0

@ruzel Les fichiers JS/CSS externes ne peuvent pas être spécifiés dans le fichier info. Vous devez les ajouter via des hooks, typiquement j'utilise 'THEMENAME_preprocess_page()' pour les choses qui doivent être incluses sur toutes les pages. –

Questions connexes