Drupal: Custom Comment Template

Manchmal reicht es in Drupal nicht, ein bestimmtes Template in den Template-Ordner zu schieben. Dann muss man Drupal extra auf dieses Template hinweisen. Dazu fügt man den $variables eine theme_hook_suggestion hinzu. Berlin-Coding zeigt das am Beispiel eines neuen Kommentar-Templates.

Zu aller erst kann man sich ein Duplikat der comment.tpl.php erstellen und dem gewünschten Inhaltstyp entsprechend benennen. Also zum Beispiel comment--content-type.tpl.php. Den Rest erledigt man in der template.php via template_preprocess_comment() mit folgendem Snippet.

/**
 * Implements template_preprocess_comment()
 * fetching custom comment.tpl.php for topthema-artikel
 */
function MYTHEME_preprocess_comment(&$variables) {
  $variables['theme_hook_suggestions'][] = 'comment__' . $variables['node']->type;
}