La bonne façon de faire ce que vous voulez est:
function myfunction() {
$output = theme('your_theme_function'); // Create your custom markup.
$output .= drupal_get_form('my_form'); // Create the form markup.
return $output;
}
Votre fonction thème doit gérer la création de votre balisage personnalisé. Cela peut être fait avec une fonction php ou en utilisant un template et une fonction de pré-traitement.
La jolie chose que l'approche ci-dessus est que vous vous brancher sur le système de thème Drupal et gagner en flexibilité. Si un concepteur veut changer le HTML, il peut le faire comme il le ferait normalement. Vous avez également la possibilité d'ajouter des suggestions de modèles et d'autres bien lorsque vous utilisez le système de thème Drupal.
Dans votre cas spécifique, vous savez peut-être que vous avez besoin de toutes ces bonnes choses, que Drupal fournit, mais vous devriez toujours prendre l'habitude de coder comme ceci. Cela rendra vos modules plus flexibles. Aussi, si jamais vous voulez apporter quelque chose sous la forme d'un module sur drupal.org, coder comme ceci est un must absolu, si vous voulez que votre module soit utilisable par d'autres.
Comme d'habitude, vos réponses sont très complètes et détaillées. Je vous remercie. – jini