Für die Startseite verwende ich ein PHP-Skript, welches ich jetzt auch für Drupal 7 angepasst habe.
Das Skript soll folgendes bewirken:
Vorgehensweise:
neuen Inhaltstyp anlegen für Node 1 Struktur - Inhaltstypen - Neu : wnfStartseite
bei diesem Inhaltstyp Anzeigeeinstellungen "Autor- und Datumsinformationen anzeigen" ausschalten Der Benutzername des Autors und das Veröffentlichungsdatum sollen nicht angezeigt werden.
Über PHPAdmin in der Tabelle node das Feld typ für node 1 auf wnfstartseite setzen
Module - PHP-Filter aktivieren
Neue Seite anlegen: Den Inhalt der beiliegenden Datei in den Body kopieren
Text-Format "PHP-Code" einstellen
Speichern
Konfiguration - System - Websiteinformationen Standardstartseite auf die eben angelegte Seite stellen
<?php
function anzeige_ohne_caption($sql){
$result = db_query_range($sql,0,10);
foreach ($result as $record) {
$node=node_load($record->nid);
$node->title = '';
$anzeige = node_view($node, 'full');
$rendered = render($anzeige);
print $rendered;
}
}
function anzeige($sql,$caption=''){
$result = db_query_range($sql,0,10);
if (($result->rowCount()>0) and ($caption<>'')) {
echo '<hr />';
echo '<h2>'.$caption.'</h2>';
}
foreach ($result as $record) {
//$rendered_teaser = render(node_view(node_load($record->nid), 'teaser'));
$rendered_teaser = render(node_view(node_load($record->nid), 'full'));
print $rendered_teaser;
}
}
// Das Intro anzeigen
$sql = "SELECT * FROM {node} WHERE nid=1 ORDER BY created ASC";
anzeige_ohne_caption($sql);
// Die heutigen Termine anzeigen
$sql = "SELECT * FROM {node} WHERE type = 'article' AND status = 1 AND nid<>1 AND promote=1 AND (DATE(FROM_UNIXTIME(created))=CURDATE() OR sticky=1) ORDER BY created ASC";
anzeige($sql,'Heute in Niederfrohna');
//Zukunft anzeigen 28 Tage
$sql = "SELECT * FROM {node} WHERE type = 'article' AND status = 1 AND nid<>1 AND promote=1 AND DATE(FROM_UNIXTIME(created))>CURDATE() AND FROM_UNIXTIME(created)<DATE_ADD(CURDATE(),INTERVAL 28 DAY)
ORDER BY created ASC";
anzeige($sql,'Die nächsten Tage in Niederfrohna');
//Vergangenheit anzeigen
$sql = "SELECT * FROM {node} WHERE type = 'article' AND status = 1 AND nid<>1 AND promote=1 AND DATE(FROM_UNIXTIME(created))<CURDATE() AND sticky<>1 ORDER BY created DESC";
anzeige($sql,'Das war los in Niederfrohna');
?>
```-
Tags: Drupal7