Réponses:
Selon l'autre réponse , les blocs sont «stupides» et n'ont pas la possibilité d'avoir des arguments «passés». Ils peuvent cependant récupérer des arguments du contexte de la page, comme les ID de nœud, l'utilisateur actuel, etc.
Vous avez vraiment deux choix «faciles»:
Vous ne pouvez rien transmettre par programme à un bloc AFAIK. Vous pouvez autoriser la configuration d'un bloc (en utilisant hook_block_configure dans D7). Alternativement, vous pouvez créer votre propre fonction de thème et vous pouvez passer des arguments à cela. Qu'est-ce que tu essaies de faire?
Pour le cas spécialisé (mais répandu) où votre bloc est un affichage d'une vue, vous pouvez utiliser views_embed_view
pour rendre le bloc avec les paramètres qu'il obtient via les filtres contextuels de la vue (c'est-à-dire, normalement à partir de l'URL).
Par exemple:
print views_embed_view('news', 'panel_pane_1', 'world');
Tous les paramètres après le second seront passés en tant que valeurs de filtre contextuelles au bloc.
Source: Réécrit à partir de cette réponse par David Thomas , licencié CC-BY-SA 3.0