module

Un template pour le module sitemap

Bonjour

Je viens vers vous car j'ai un problème pour créer un template pour le module site map.

J'ai pourtant bien compris le système de template de Drupal puisque j'ai déjà créé des .tpl.php pour des modules, des régions...

Mais pour le module site map, je sèche.

J'ai créé mon fichier template block-site_map.tpl.php à la racine du répertoire de mon thème, mais rien ne change (je précise que j'ai vidé le cache plusieurs fois). C'est toujours le fichier template du module qui est utilisé.

Est-ce que quelqu'un a déjà rencontré ce problème ?

[Résolu] Programmation d'un message à chaque jour

Bonjour,

J'ai besoin d'intégrer un block qui me permettrait d'afficher automatiquement une nouvelle information à chaque jour.

Je veux donc être capable de les ajouter à une liste pour qu'il se publie et s'efface automatiquement. Je n'ai besoin de ne voir qu'une seule publication à la fois.

Des idées pour un module?

Merci!

Création d'un module: Ajout d'un item dans le menu Drupal

Bonjour à tous,
comme je l'ai dit dans un précédent sujet, je suis un petit nouveau dans le monde de Drupal... et j'ai forcément quelques petits soucis.

Pour le moment, j'ai décidé de créer un petit module simple histoire de voir comment ça fonctionne.
Donc la première chose que j'ai voulu faire, c'est d'ajouter un item dans le menu drupal permettant d'accéder à certaines pages/fonctions de mon module...

Pour ce faire, j'ai implémenté le hook_menu de Drupal... Mais malheureusement, même après avoir vidé le cache, rien n'apparait dans le menu de Drupal :'( ^^.

Module qui rajoute une partie dans l'administration

Bonjour tout le monde,
J'aurais besoin de votre aide au niveau du développement d'un module qui me rajouterait une partie dans l'administration (dans "gestion du contenue") et qui contiendrait un formulaire.
Le formulaire, c'est pas un problème mais comment faire en sorte que sa rajoute un lien dans l'administration ?

Pour l'instant voilà le code que j'ai fait en prenant exemple sur des modules existant.

<?php

création d'un module de recherche avec formulaire

Bonjour, après des heures de recherche je me décide à poster sur ce forum. J'essaie de créer un module avec un formulaire qui, une fois remplis donne lieu à une requête sur une base.
Mais là où je pèche c'est que je voudrais que le résultat de cette requête soit affiché dans un tableau sous le formulaire (sur la même page).

En résumé le problème se limite à saisir un champ, puis retourner la valeur saisie sur la même page, j'ai du rater quelque chose d'essentiel...

Pertinence de développement?

Bonjour,

Dans une optique où je dois coder des templates allant d'un node.tpl.php à une view.tpl.php et inversement (par un système d'onglet), il vaut mieux développer tous les node.tpl.php et les views.tpl.php? Ou il vaut mieux développer un module avec des hook (hook_menu, etc...) et développer d'autres template autour?

Quel est le plus pertinent?

Par Artusamak
Julien Dubois

Créer des templates (fichier.tpl.php) pour themer vos modules

Lors de la création de vos modules vous pouvez être amenés à mettre en forme votre contenu pour garder une approche cohérence avec la dissociation fond / forme. Il est donc nécessaire de donner la possibilité au themer de pouvoir modifier la mise en forme du contenu que vous aller afficher.
Afin de rendre une telle action possible, vous allez devoir déclarer au sein de votre module un hook_theme, qui va déclarer les éléments qui pourront être themés via vos templates.
Le hook_theme est simplement constitué d’un tableau d’éléments skinnables avec pour chaque entrée une clé « template » qui correspond au nom du fichier .tpl.php utilisé pour le theme et une clé « arguments » correspondant à un tableau de paramètres à passer à la fonction de theme().

function hook_theme() {
  return array(
    'my_themeable_call' => array(
      'template' => 'gabarit.tpl.php',
      'arguments' => array("param1" => NULL),
    ),
  );
}

A noter : Le « .tpl.php » est facultatif car toujours suggéré par le moteur de template et il est recommandé d’utiliser le même nom comme clé et comme nom de fichier pour le template. (Les noms sont ici différents pour vous permettre de décortiquer la mécanique). [Merci Cyril pour la remarque]

Voilà votre fonction de thème déclarée, il ne reste plus qu’à l’utiliser.
Prenons l’exemple d’un bloc, vous souhaitez utiliser votre fonction de thème dans son contenu, il vous suffit d’utiliser dans le contenu du bloc (cf hook_block) votre fonction de theme : $bloc['content'] = theme(‘my_themeable_call’, $param1);
De cette façon vous enverrez à votre fichier de template la variable $param1 (pouvant contenir tout type de données). Si vous omettez de passer un argument, la valeur par défaut déclarée dans le hook_theme sera utilisée (dans notre exemple si j’omets $param1, sa valeur sera NULL).

Plaçons-nous maintenant dans notre fichier de template gabarit.tpl.php, c’est le fichier que votre themer pourra surcharger en le copiant collant dans le dossier de son thème.
Les variables à disposition sont celles que vous avez passé en paramètres lors de l’appel de la fonction de thème (ici $param1) et les éventuelles variables ajoutées par les fonctions de preprocess. (La signature de la fonction est template_preprocess_my_themeable_call, surchargeable par THEME_preprocess_my_themeable_call).

De cette façon vous pouvez donc créer vos propres fichiers de theming lors de la publication de vos modules afin de vous faire adorer par les themers !

tag

Pages