Hinzufügen eines Custom-Themes für die hinzufügen/bearbeiten Seite eines spezifischen Contenttypes
am 14.07.2014 - 10:21 Uhr in
Hallo,
ich habe versucht in meiner Drupal 7 Instanz das Theme der hinzufügen/bearbeiten Seite eines bestimmten Contenttypes anzupassen.
Hierfür habe ich mich an folgendes Guide gehalten: https://www.drupal.org/node/1200216
Zudem habe ich verschiedene Variationen von diesem Code ausprobiert, welche ich über google gefunden habe.
Aber: Ich habe es bis jetzt nicht zum Laufen bekommen.
Im Detail:
Ich benutze das Theme "Porto" für Drupal 7 und habe ein sub-theme angelegt, in dem ich die Templates, für die oben genannten Seiten, anpassen möchte.
Ich habe einige Templates für Views und das Anzeigen einer Seite eines spezifischen Contenttypes verändert und es funktioniert. Hierbei ist der Unterschied,
das diese Templates über bestimmte Namens-Konventionen der Dateien aus den Ordnern im Theme anzogen werden.
Ich habe jedoch keine Möglichkeit gefunden, diese Namens-Konventionen auch für die Add/Edit Seiten für einen Contenttyp zu nutzen, weshalb ich auf das obige Guide
zurückgegriffen habe.
Ich habe für mein vorhaben eine "template.php" im sub_theme, welches "porto_sub" heißt, angelegt. Dort habe ich folgenden Code eingefügt:
<?php
function porto_sub_theme($existing, $type, $theme, $path) {
$base=array(
'render element' => 'form',
'path' => drupal_get_path('theme','porto_sub') . '/templates/',
);
watchdog('citpub path', '<pre>' . $path . '</pre>');
return array(
'citpublication-node-form' => $base + array (
'template' => 'citpublication-node-form',
),
);
}
?>Wie zu sehen ist, habe ich auch watchdog genutzt, um einmal nachzuvollziehen, wo der Theme-Prozess stecken bleibt. Die hier eingefügte Nachricht wird protokolliert und somit wird diese Funktion wohl auch ausgeführt.
Das Theme ändert sich jedoch nicht. Wenn ich solch eine Protokoll-Nachricht in das Template schreibe, oder gar php fehler einbaue, wird dies nicht bemerkt. Dies zeugt davon, das das Template wohl nicht angezogen wird.
Den Namen der "form", auf die das neue Template gelegt werden soll, habe ich per Firebug ermittelt. Was mich hier etwas gewundert hat, das im Internet überall die Form-Tags mit _ geschrieben werden, jedoch meine immer mit - .
Ich habe beide Variationen getestet, macht keinen Unterschied.
Zu guter Letzt, habe ich auch den oben angegebenen Code in die "template.php" vom Parent-Theme eingefügt, was jedoch zum gleichen Ergebnis führte.
Falls ihr noch mehr Informationen benötigt, fragt einfach nach. Vielleicht könnt ihr mir meine Fehler aufzeigen, da ich nicht mehr weiter weiß.
Vielen Dank!
- Anmelden oder Registrieren um Kommentare zu schreiben

Heißt dein Theme 'porto_sub'
am 16.07.2014 - 12:08 Uhr
Heißt dein Theme 'porto_sub' oder ist das schon der Maschinenname (von 'porto sub')?
Gruß
Christian
Hi, das ist schon der
am 16.07.2014 - 12:15 Uhr
Hi,
das ist schon der Machinenname :)
Es heißt eig. "Porto sub"
LG
Thorsten