Chemin absolu sous Drupal

Dans: Drupal

30 juil 2009

Dans le développement d’un module personnel sous Drupal, nous avons besoin du chemin absolu du theme (par exemple). Sans cela, nous sommes obligés d’utiliser un chemin commencant par /sites/all/themes/nom_theme/.

Cependant, ce n’est pas pratique si nous déplaçons notre site dans un dossier. Cela diffère de la racine. Nous utilisons donc « drupal_get_path » pour cela.

global $theme;
 $ptt = drupal_get_path('theme', $theme);

utilisation :

<img src="/<?php echo $ptt ?>/images/logo.png" alt="" />

2 Commentaires pour Chemin absolu sous Drupal

Avatar

Maxime Topolov

juillet 31st, 2009 à 1 h 29 min

Bonjour Frédéric !

Attention, normalement dans un module on est pas censés avoir besoin d’accéder au thème. En effet, les modules contiennent le fonctionnel ou des API et devraient déléguer le rendu au thème.

Je ne vois pas dans quel cas de figure, on aurait besoin d’accéder au répertoire du thème depuis un module, cela voudrait dire, que si justement on change de thème le module arrêtera de fonctionner.

Maxime.

Avatar

Fred

juillet 31st, 2009 à 1 h 38 min

Bonsoir Maxime !

A vrai dire, je me sers de ceci soit dans le page.tpl.php, soit dans les fichiers personnalisés d’un module. Pour aller chercher une image qui se trouve dans le theme, j’utilise ceci. C’était juste une note dans un coin vu que je l’utilise à chacun de mes fichiers de modules.

Je t’avoue que je débute sous Drupal et que c’est pas évident. J’essaye de bidouiller, mais il me manque la rigueur pour faire ce que je souhaite. (Trop d’informations entre Magento & Drupal).

Et oui si je change de thème, il faut que l’image existe aussi dans le dossier du theme. Ce qui n’est pas très pratique je te l’accorde. Mais le client ne change pas de thème toutes les semaines !

Merci de ton commentaire.

Formulaire pour Commenter

Si vous en avez besoin, entourez votre code :

PHP : [php]echo $variable[/php]
XML : [xml]<default></default>[/xml]

Je m'appelle Frédéric Martinez.

Je suis Freelance Magento et anciennement étudiant en Master MIAGE à Toulouse.

Ce site présente mon CV ainsi que mes réalisations professionnelles, personnelles et universitaires.

rss_32 twitter_32 Magento

  • alexandre: Merci, c'est exactement ce dont j'avais besoin ! [...]
  • Frédéric Martinez: De base, non ce n'est pas possible. Cependant, cela doit se jouer dans les configurations JS de cal [...]
  • Peter: le tuto est génial, il est tres utile pour les débutants comme moi. Mais j'ai une petite que [...]
  • Frédéric Martinez: @martin : Non cela ne marche pas avec un Magento 1.6.2.0 par exemple car la table sales_order n'exis [...]
  • martin: Bonjour, ce code marche -t-il toujours sur les nouvelles version de magento ? merci [...]