Chaque page de mon thème devra utiliser l'interface utilisateur jquery. Je sais qu'il est inclus avec Drupal 7, mais je ne peux pas vraiment déchiffrer la documentation trop technique de Drupal. Il semble que la seule façon de le faire soit avec le fichier template.php. Mais comme je ne comprends pas ce fichier, j'essaie d'éviter de le faire de cette façon.
Existe-t-il une autre méthode ou dois-je simplement essayer le fichier template.php?
7
theming
javascript
Ben
la source
la source
Réponses:
Ajouter JS à une page n'est vraiment pas si difficile, même si vous devez utiliser php.
Pour les fichiers JS normaux, vous pouvez faire quelque chose comme ça
Drupal a cependant enregistré jQuery UI dans des bibliothèques, ce qui facilite l'ajout de fichiers JS et CSS pour certains plugins jQuery UI. Cela peut être fait en utilisant
Tous les plugins jQuery UI existent dans le module système, vous pouvez donc faire
ou
Certains de ces plugins ont des dépendances car ils utilisent d'autres plugins. Drupal gère cela très intelligemment et inclura les composants nécessaires.
Vous pouvez voir la liste complète des plugins jQuery ici . Ceci est formaté comme un tableau PHP, mais généralement la convention de dénomination est ui.PLUGIN-NAME.
Si vous devez ajouter le JS sur chaque page, vous pouvez simplement ajouter un crochet de page de prétraitement et les y ajouter. Cela ressemblerait à quelque chose comme ceci dans le fichier template.php.
la source
function nocturnal_preprocess_page(&$variables) { drupal_add_library('system', 'ui'); drupal_add_library('system', 'ui.datepicker'); }
drupal_add_library('system', 'ui');
etdrupal_add_library('system', 'ui.accordion');
? Le premier récupère-t-il tout ou simplement le noyau? Ai-je besoin d'une ligne pour chaque plugin que j'utilise?avez-vous essayé le module date_popup ? fonctionne bien avec l'API de formulaire
la source
la source
Merci d'
googletorp
avoir répondu à cela.Juste pour ajouter, si les choses ne sont toujours pas très claires concernant l'activation des plugins d'interface utilisateur .
Veuillez noter que lorsque vous mentionnerez:
drupal_add_library('system', 'ui');
Cela n'activera PAS automatiquement tous les plugins ui.
Vous pouvez trouver la liste des plugins jquery ui disponibles dans drupal 7 ici:
/misc/ui/
Pour activer un plugin perticulaire, par exemple:,
jquery.ui.slider.min.js
vous devez ajouter cette ligne:J'espère que c'est utile.
la source
J'ai eu ce problème récemment. Quelqu'un m'a donné son module personnalisé pour forcer l'interface utilisateur JQuery à se charger sur chaque page. Vous pouvez le recréer simplement. Tout d'abord, installez jquery_update et assurez-vous que cela fonctionne. Ensuite, créez et activez ce module:
Créez un dossier dans le chemin / vers / modules nommé 'jquery_force'.
A l'intérieur, ajoutez deux fichiers:
jquery_force.info :
jquery_force.module :
la source
L'ajout d'un hook de prétraitement dans le
template.php
fichier n'a pas fonctionné pour moi.Je mets simplement
drupal_add_library('system', 'ui');
dans letemplate.php
fichier par lui-même, fonctionne.la source