Standard-Felder deaktivieren?

am 04.02.2009 - 10:52 Uhr in
Hallo,
ich frage mich gerade, wie es möglich ist, mittels CCK einen neuen Node-Typ zu erstellen, ohne daß dieser die Felder vom Beitrags-Modul (Titel & Body) erhält.
Ich finde irgendwie keine Möglichkeit, die zu deaktivieren -- geht das etwa nicht!?
Danke für eure Hilfe!
- Anmelden oder Registrieren um Kommentare zu schreiben
Das geht
am 04.02.2009 - 11:23 Uhr
Beim Body musst Du einfach die Beschreibung lehrlassen im NodeType für den Titel gibt's ein Modul, konnte es aber jetzt nicht auf die Schnelle finden.
Gruss Roger
Automatic nodetitle
am 04.02.2009 - 11:44 Uhr
Mit Automatic nodetitle kannst du das Titelfeld verstecken und den Seitentitel automatisch generieren.
Es gibt noch die etwas
am 04.02.2009 - 12:11 Uhr
Es gibt noch die etwas brachialere Lösung: Link
Das "Problem" ist, das gerade beim Titelfeld wichtig ist, das daraus auch der Seitentitel generiert wird, somit braucht eigentlich jede Seite einen Titel.
Mich selbst hat es auch schon des öfteren gestört, vor allem das die beiden Felder so unflexibel sind. Ich spreche jetzt mal von D5, da war es nicht möglich die Zeichenzahl für Titel und Body zu definieren, was bei diversen Layouts zu Problemen führen kann. zudem war die Generelle Position vorgegeben, wodurch man öfter mal mit Gruppen arbeiten musste. Gibt da aber ein paar Code-Snippets um zumindest die Zeichen zu begrenzen.
Hallo, das mit dem
am 05.02.2009 - 11:15 Uhr
Hallo,
das mit dem Nodetitle-Modul war goldrichtig für mich! Jetzt lasse ich einfach den Titel automatisch erstellen und das Bodyfeld verstecke ich über die template.php.
Vielen Dank euch! :)
Kannst du für das
am 05.02.2009 - 11:25 Uhr
Kannst du für das Ausblenden des Body-Fields den Code der template.php mal posten? Würde mich persönlich auch interessieren! Danke im Voraus.
Grüße vom,
Genesis
Klar, hier: function
am 05.02.2009 - 11:44 Uhr
Klar, hier:
function phptemplate_node_form($form)
{
$ctype=NULL;
if (arg(0) == 'node' && arg(1) == 'add') // node/add/node-typ
{
$ctype=arg(2);
}
if (!$ctype && arg(0) == 'node' && arg(2) == 'edit') // node/id/edit
{
$node = node_load(arg(1));
$ctype=$node->type;
}
if ($ctype=="dein_node_typ") // Ist das der Node-Typ, um den es geht?
{
unset($form['body_field']); // Weg mit dem Body-Feld!
}
$buttons = drupal_render($form['buttons']); // Die Buttons zuerst rendern, damit sie am Ende auftauchen.
return drupal_render($form) . $buttons;
}
Allerdings sei anzumerken, dass ich nicht sicher bin, ob das auch mit Path-Aliasen klappt. Zudem wirkt sich das Ergebnis hier auch nur auf die Darstellung der Felder aus, validiert werden sie trotzdem. Das heißt, dass Pflichtfelder nicht so ohne Weiteres rausgenommen werden können, aber da hätte ich bei Bedarf auch noch eine etwas unsaubere, jedoch funktionierende Lösung anzubieten.