Comment puis-je obtenir le chemin d'accès de l'actuel de drupal thème?
L'API Drupal a drupal_get_path($type, $nom)
qui va donner le chemin d'un thème particulier ou d'un module. Que faire si je veux que le chemin d'accès du thème actuel?
Vous devez vous connecter pour publier un commentaire.
Utiliser le
path_to_theme
fonction.cela devrait fonctionner (doc):
path_to_theme()
, que l'usage de la$theme_path
.$theme_path
est pas définie, le thème est initialisé et puis la nouvelle$theme_path
est retourné. Voir path_to_theme.En D6 path_to_theme() ne peut pas se comporter de façon à vous attendre selon la façon dont vous l'utilisez. Si vous l'utilisez à l'extérieur d'un thème prétraiter les fonctions, alors il sera probablement vous donner ce que vous voulez, mais si il est appelé dans le cadre d'un module de thématisation/prétraiter fonction de raccordement... il sera pointant vers le chemin d'accès du module qui a déclaré que le thème.
Ex. Si j'ai un thème "mon_theme" et mon module "mon_module" qui est remplacer les thèmes du forum à l'aide de la prétraiter les crochets, appelant path_to_theme() à l'intérieur de mon module: par exemple, my_module_preprocess_forums()... sera de retour "forums", et pas "mon_theme" que l'on pourrait attendre.
Très fruité, si vous me demandez.
Dans Drupal 7, pour obtenir, le thème actuel du chemin, on peut utiliser:
path_to_theme() fonction.
Dans Drupal 8
Dans Drupal 5, vous pouvez simplement utiliser: path_to_theme()
Cela vous donnera un chemin d'accès complet à partir de la racine de Drupal pour le thème spécifique de répertoire. Être conscient, il ne contient pas de slash.
Dans Drupal 6, il se comporte un peu différemment. Si vous appelez ça de l'intérieur de vos pages, il va appeler tout ce qui est en train de faire la thématisation... si ce n'est de votre thème, d'un module, etc. Voici la citation de l'API docs:
Source: http://api.drupal.org/api/function/path_to_theme
Pour D8, le dossier du thème est disponible dans prétraiter fonctions:
page.html.rameau: