Travail avec la base de données dans Drupal 7 - leçon 11 - Requêtes de fusion (MERGE)
Les requêtes de fusion sont un type spécial hybride de requêtes. Bien que la syntaxe pour ces requêtes ait été définie dans SQL 2003, en réalité aucune base de données ne supporte cette syntaxe. Cependant, la plupart des bases de données fournissent une implémentation alternative en utilisant une syntaxe spécifique. Le constructeur de requêtes de fusion dans Drupal abstrait le concept de fusion de requête dans une structure objet, de sorte que cet objet peut être compilé différemment pour chaque base de données en tenant compte de ses spécificités.
Travail avec la base de données dans Drupal 7 - leçon 12 - Conditions des requêtes (WHERE, HAVING, LIKE)
La condition d’une requête permet de sélectionner uniquement les enregistrements répondant à certaines contraintes, par exemple les nœuds créés depuis moins de deux semaines, les termes contenant le mot "drupal", etc. En SQL, on utilise WHERE et HAVING pour définir des restrictions sur les requêtes SELECT, UPDATE, DELETE. Dans les requêtes dynamiques, un mécanisme similaire existe pour gérer ces conditions, fonctionnant de la même manière pour les trois types de requêtes : sélection, mise à jour, suppression.
Créer un module Drupal, démarrage rapide
Commençons par api.drupal.org, ouvrez la page du hook hook_node_presave()
, qui s’exécute avant l’ajout d’un nœud.
http://api.drupal.org/api/drupal/modules!node!node.api.php/function/hook_node_validate/7
Les hooks nous permettent d’intégrer notre code dans le flux normal de Drupal, pour ajouter des validations, des champs, des éléments de formulaire, etc.
Ajoutons notre module dans le dossier sites/all/modules
:
De quoi est composé un module Drupal 7 ?
Avant de commencer à créer notre module, je vais vous parler un peu des possibilités de l’API Drupal. L’API offre de larges fonctionnalités pour travailler avec la taxonomie, les nœuds, les utilisateurs, ainsi que pour l’entrée et la sortie depuis la base de données. Pour l’interaction entre les modules et le noyau de Drupal, ainsi qu’entre les modules eux-mêmes, Drupal dispose d’un système de hooks. Un hook est un callback, c’est-à -dire qu’au moment où l’exécution du code atteint un hook, le code de notre fonction ajoutée dans notre module est exécuté.
Drupal 7 hook_block_info() et hook_block_view() : afficher des informations dans un bloc
Dans la leçon précédente, nous avons créé un module pour Drupal 7, dans cette leçon nous allons continuer à étendre les fonctionnalités de notre module. Nous ajouterons l'affichage d'un bloc via le hook hook_block_view()
, ainsi que hook_block_info()
. Ce bloc contiendra des informations sur les derniers utilisateurs du site avec un lien vers leur page.
Je commence par décrire le hook_block_info() :
Il définit tous les blocs créés par le module.
Hook_menu Drupal 7 : création de pages via un module
Dans la leçon précédente, nous avons vu comment afficher des informations depuis la base de données en utilisant l'API Drupal, notamment avec les hooks hook_block_info() et hook_block_view(). Dans cette leçon, nous allons afficher des pages, plus précisément utiliser le hook hook_menu pour connecter une page aux différentes parties de Drupal : menu, module de traduction, templates, etc.
hook_permission Drupal 7 : permissions d’accès pour différents rôles
Lors des leçons précédentes, nous avons affiché des pages et des blocs à différents endroits, en utilisant aussi les propriétés 'access arguments' et 'access callback' pour définir des restrictions d’accès aux pages. Dans cette leçon, nous allons créer une possibilité d’édition plus flexible des droits d’accès aux opérations via des pages d’administration. Pour cela, nous utiliserons le hook_permission() (dans Drupal 6, c’était hook_perm()).
Form API Drupal 7 : création de formulaires dans Drupal
Dans les leçons précédentes, nous avons découvert les hooks hook_block_info(), hook_block_view(), hook_menu(), hook_permission() et nous pouvons maintenant créer autant de pages et blocs programmatiquement que nous le souhaitons. Dans cette leçon, nous allons apprendre à utiliser le Form API de Drupal 7 pour créer des formulaires. Nous allons créer un formulaire d’administration des fonctionnalités du module et essayer d’utiliser un maximum de hooks déjà connus afin de renforcer nos compétences.
Thématisation Drupal (styles, templates)
Dans les deux premières sections du tutoriel Drupal drupalbook.org, vous avez appris comment installer un site, ajouter des types de contenu, créer des contenus de différents types et afficher ces contenus avec Views. Dans les sections suivantes, vous avez découvert le HTML/CSS. Il est maintenant temps de parler de la façon de modifier l’apparence de ces contenus grâce au CSS.
Thématisation d’un site Drupal 6/7. De quoi se compose un template ?
Bonjour Ă tous !
J'espère que vous avez déjà regardé une introduction rapide à HTML et CSS. Vous êtes maintenant prêts à créer des thèmes Drupal basés sur des maquettes PSD. Voici ci-dessous les liens vers les "tutoriels" HTML et CSS :