Insérer un bloc dans un node avec Drupal 7

La semaine dernière nous avions vu comment créer un bloc avec les articles associés (related articles) avec Drupal 7 et le placer dans notre node grâce à l'interface des blocs de Drupal. Mais nous avions vu aussi que ce bloc s'affichait en dessous des commentaires.

Aujourd'hui nous verrons donc comment insérer ce bloc dans notre contenu (node) pour avoir plus de flexibilité au niveau du layout. Nous verrons la manière simple en travaillant au niveau du node--article.tpl.php mais aussi et surtout en travaillant plus proprement au niveau du preprocess du node avec la fonction theme_preprocess_node().

Tags:

Dans la blogosphère comme dans la presse en ligne, au bas des articles il est assez fréquent d'avoir un bloc avec des articles sur le même sujet (related articles pour les anglophones), articles connexes ou encore articles associés soit à l'auteur, soit à certains mots clés.
 
Je vous propose aujourd'hui un billet qui vous expliquera comment créer un bloc qui liste les articles associés à un des termes (tags) du node actuel avec Views 3 sous Drupal 7.x. Vous verrez que ce sera vraiment simple et rapide comme c'est souvent le cas avec Drupal.

Tags:

Afficher les variables disponibles de notre theme en Drupal 7.x

Lorsque nous travaillons au niveau du theme layer, par exemple sur notre node.tpl.php, nous nous demandons parfois quelles sont les variables dont nous disposons, c’est à dire quelles sont les variables qui ont été envoyées vers notre fichier .tpl.php

Dans ce post nous verrons qu’en fait les fichiers .tpl.php de notre installation par défaut de Drupal sont en réalité très bien documentés, mais nous verrons aussi une manière plus simple et plus dynamique en utilisant la fonction get_defined_vars().

Tags:

Theming: Déplacer les liens Addthis au dessus de nos nodes en Drupal 6.x

Le module Addthis de Drupal permet à l’utilisateur de notre site de partager le contenu sur différents réseaux sociaux (FaceBook, Twitter…). Par défaut, ce module place les liens sociaux au bas de notre node, juste en dessous du contenu.

Mais comment pourrions-nous placer ces liens au dessus du contenu, comme cela se fait plus généralement?

Tags:

Changer le label dans un formulaire du module Location en Drupal 6.x

Un de mes clients me demandait cette semaine de changer le label (ou le titre) d’un champ localisation dans un formulaire d’édition d’un node sur son site Drupal. Il voulait en particulier que les noms de champ 'Rue' et 'Additional' soient remplacés par 'Adresse 1' et 'Adresse 2' respectivement.

Comme vous le savez sans doute les module Location et Gmap de Drupal nous permettent de (géo) localiser des nodes avec de jolies cartes de Google Maps.

Nous allons donc, dans module propre, utiliser le hook_form_alter() mais avec deux manières distinctes si nous avons utilisé le sous module Location CCK ou le sous module Node Locations.

Dans les deux cas nous allons utiliser la fonction #after_build qui nous permet d’appeler une fonction une fois que notre formulaire a été construit mais avant qu’il soit renderisé (rendered). C'est là que nous allons changer nos labels ou titres de nos champs.

Node Locations

<?php
/**
   * Implementation of hook_form_alter().
   *
   * The function is named modulename_form_alter.
   */
function MYMODULE_form_alter(&$form, &$form_state, $form_id){
  switch (
$form_id){
    case
'MYNODE_node_form':
     
$form['#after_build'][] = 'change_location_label';
    break;
  }
}

function
change_location_label(&$form) {
 
$form['locations'][0]['street']['#title'] = t('Adress 1');
 
$form['locations'][0]['additional']['#title'] = t('Adress 2');

  return
$form;
}
?>

Tags: