Ergänzung: node/add Formular in einem Block
Ich habe genau das hier Beschriebene auch gebraucht und folgende Lösung benutzt:
Das Form Block Modul stellt Blöcke für die Formulare zum Erstellen von Inhalt bereit.
Den Block in die Fußzeile des Views bringen
Als Eingabeformat php wählen!
<?php
// statt 'massnahmen' den namen eures inhaltstyps eingeben
$block = (object) module_invoke('formblock', 'block', 'view', 'massnahmen');
print theme('block', $block);
?>
Der Vorteil des Blocks ist, dass man Blöcke themen kann. Ich habe das genutzt, um den Block mit Drupals hauseigenen Möglichkeiten zu "collapsen". Das sieht dann so aus:
zusammengeklappt:
und aufgeklappt:
Block Template
Dafür muss man einfach eine Block-Template-Datei erstellen. Dazu die block.tpl.php eures Themes kopieren und entsprechend umbenennen (Im Quelltext findet man die id des Blocks, aus der man dann den Dateinamen macht, z.B. block-page-0.tpl.php).
VORAB EIN HINWEIS: es gibt derzeit noch ein Problem mit dem Form Block Modul, das zuerst gelöst werden muss. Es gibt die id des Blocks nicht richtig aus, weshalb das Block-Themeing nicht richtig greift. Diese issue auf drupal.org erklärt die (recht einfache) Lösung dazu.
Zum Zusammenklappen muss meine block-page-0.tpl.php-Datei so aussehen:
<?php
// $Id: block.tpl.php,v 1.1 2008/10/01 03:26:19 jwolf Exp $
?>
<!-- start block.tpl.php -->
<!-- hier der hinzugefügte code zum collapsen -->
<?php
drupal_add_js('misc/collapse.js');
?>
<fieldset class="collapsible collapsed">
<legend class="collapse">
<!-- hier der hinzugefügte code zum collapsen ende (<fieldset> muss am ende der datei noch geschlossen werden) -->
<a href="#">Neue Unterlagensammlung</a>
</legend>
<!-- hier der hinzugefügte code zum collapsen ende (<fieldset> muss am ende der datei noch geschlossen werden) -->
<div class="fieldset-wrapper">
<div class="block-wrapper <?php print $block_zebra; ?>">
<?php if ($rounded_block): ?> <!-- see preprocess_block() -->
<div class="rounded-block">
<div class="rounded-block-top-left"></div>
<div class="rounded-block-top-right"></div>
<div class="rounded-outside">
<div class="rounded-inside">
<p class="rounded-topspace"></p>
<?php endif; ?>
<div id="block-<?php print $block->module .'-'. $block->delta; ?>" class="block block-<?php print $block->module ?>">
<?php if ($block->subject): ?>
<?php if ($rounded_block): ?>
<div class="block-icon pngfix"></div>
<?php endif; ?>
<h2 class="title block-title pngfix"><?php print $block->subject ?></h2>
<?php endif; ?>
<div class="content">
<?php print $block->content ?>
</div>
</div>
<?php if ($rounded_block): ?>
<p class="rounded-bottomspace"></p>
</div><!-- /rounded-inside -->
</div>
<div class="rounded-block-bottom-left"></div>
<div class="rounded-block-bottom-right"></div>
</div><!-- /rounded-block -->
<?php endif; ?>
</div>
</div>
<!-- fieldset schließen -->
</fieldset>
<!-- /end block.tpl.php -->
Letzter Schliff
Mithilfe des von stBorchert hier erstellten formredirect-Moduls wird man beim Speichern des neuen Inhalts direkt wieder zum View geführt, was einem unheimlich viele Klicks ersparen kann.
Wenn man außerdem noch das editablefields-Modul verwendet, mit dem man einzelne Felder im View direkt bearbeiten kann, kann man sich eine sehr komfortable Inhaltsverwaltung bauen.
Anhang | Größe |
---|---|
1.jpg | 33.66 KB |
2.jpg | 80.59 KB |
- Anmelden oder Registrieren um Kommentare zu schreiben
Neue Kommentare
vor 2 Tagen 20 Stunden
vor 2 Tagen 23 Stunden
vor 2 Tagen 23 Stunden
vor 2 Tagen 23 Stunden
vor 3 Tagen 20 Stunden
vor 3 Tagen 22 Stunden
vor 4 Tagen 19 Stunden
vor 5 Tagen 12 Stunden
vor 5 Tagen 13 Stunden
vor 5 Tagen 16 Stunden