Verschiedene Startseiten für User bzw. Gäste nur mit core? Geht das?
am 08.02.2010 - 18:22 Uhr in
Hallo liebe fleißige Drupalhelfer,
ich habe jetzt schon Drupal lokal und beim Provider installiert. Das Buch von Herrn Graf (empfehlenswert!) von vorn bis hinten durchgelesen, aber eine Frage stellt sich mir nun trotzdem. Wie bekomme ich es hin (ohne php code etc., ohne Zusatzmodul nodeaccess, diesbezüglichen post hab ich schon gefunden ;-))... also wie bekomme ich es hin, dass angemeldete User eine andere Startseite sehen, als nicht angemeldete? Mit Hausmitteln! Also mit drupal 6.x core Modulen. Das muss doch gehen...
Nach der Installation legt der normale Änfänger ja erstmal eine page an und dann stories, aber die kann er nicht so einfach verschiedenen "Usern" zuweisen...
Ich habe herausgefunden, dass ich Blöcke mit Rechten versehen kann, also wer soll einen Block sehen etc. Ist das der richtige Weg?, also 2 Blöcke [content1] und [content2] anlegen, dann [content1] "angemeldeten Usern" zuweisen und [content2] nur "Gästen" zuweisen?
Würde mich über einen Tipp freuen! Wenn ich groß bin (in drupal) gebe ich dann auch mal Tipps, versprochen.
Liebe Grüße
Mathias
- Anmelden oder Registrieren um Kommentare zu schreiben

Wenn Du es rein mit Core
am 08.02.2010 - 19:48 Uhr
Wenn Du es rein mit Core machen willst, sind Blöcke die einfachste Lösung. Nimm eine Startseite, die nur aus dem Titel besteht. Dann kannst Du einmal Blöcke hinlegen, die nur für Gäste zu sehen sind (Achtung: Auch normale User sind Gäste vor dem Einloggen!) und die Seite springt um und zeigt andere Blöcke, die nur für angemeldete User zu sehen sind, wenn Deine User sich eingelogged haben.
Beste Grüße
Werner
vielen dank für den tipp!
am 08.02.2010 - 22:01 Uhr
Lieber Werner, ich hab das gleich ausprobiert. Wunderbar, bis auf eine Kleinigkeit. Ich habe also jetzt einen Block A in der Region content angelegt, der nur auf der page gezeigt wird und nur für "anonymous", dann noch einen Block B in der Region content, der nur für eingeloggte user angezeigt wird (auch only page). Wenn ich mich einlogge, sehe ich B, wenn ausgeloggt A... Aber wenn ich jetzt neue "pages" oder "stories" anlege, wie bekomme ich die in Block A oder B ? Liebe Grüße Mathias
Dafür nimmst Du Views. Das
am 08.02.2010 - 22:10 Uhr
Dafür nimmst Du Views. Das ist nicht mehr Core, aber eine Drupal-Seite ohne Views kann ich mir nicht vorstellen. Du filterst die Daten (Artikel) aus, die Du zeigen willst. Dann legst Du einen Display an (es gibt Block oder Seite). Hier kannst Du auch bei Zugriff schon sagen, wer was sehen darf. Die Blöcke gehen wieder wie vorher. Am besten liest Du Dir zu Views das Kapitel im Online-Buch von Hagen Graf erst mal durch (www.cocoate.com/de). Das sollte schon mal einen Einblick in die Materie geben. Es wird aber einige Zeit brauchen, bist Du mit Views vertraut bist. Nicht entmutigen lassen, anderen ging und geht das genau so.
Beste Grüße
Werner
mit page.tpl.php
am 09.02.2010 - 07:40 Uhr
Guten Morgen,
es gibt da noch die Lösung mit der page.tpl.php zu arbeiten, das habe ich beim mir auf der Seite gemacht für die Eingangsseite.
Der php in der page.tpl.php müßte dann wie folgt aussehen:
<?php
global $user;
if ($user->uid > 0){
include 'page-alle.tpl.php'; /*load page-alle.tpl.php */
return;
}
else{
include 'page-fronten.tpl.php'; /*load page-front.tpl.php */
return; }
?>
Dann kann man die Boxen so setzen in den 2 page.tpl.php wie man sie braucht und es sieht jedes mal schön aus.
MfG
Michael Finger
Holztechniker
www.holzwurm-page.de
danke nochmal ...
am 09.02.2010 - 18:58 Uhr
Lieber Werner, views habe ich nun installiert. Heute schaue ich mir das genauer an. Scheint der beste Weg zu sein, auch im Hinblick auf die Benutzer, die die Seiten pflegen sollen. Die sollen kein PHP können müssen. LG Mathias
Holzi schrieb Guten
am 09.02.2010 - 19:00 Uhr
Guten Morgen,
es gibt da noch die Lösung mit der page.tpl.php zu arbeiten, das habe ich beim mir auf der Seite gemacht für die Eingangsseite.
Der php in der page.tpl.php müßte dann wie folgt aussehen:
<?php
global $user;
if ($user->uid > 0){
include 'page-alle.tpl.php'; /*load page-alle.tpl.php */
return;
}
else{
include 'page-fronten.tpl.php'; /*load page-front.tpl.php */
return; }
?>
Dann kann man die Boxen so setzen in den 2 page.tpl.php wie man sie braucht und es sieht jedes mal schön aus.
Lieber holzi, musst du dann immmer im PHP code (also in den page...tpl.php Dateien arbeiten oder kannst du die beiden tpl.php über drupal managen? Es soll ja einfach bleiben ohne viel PHP. LG Mathias
mit Blocken
am 09.02.2010 - 21:46 Uhr
Hallo Mathias,
ich habe mir dafür extra Blocke angelegt, die dann nur für die einzelnen page.php.tpl zuständig sind, da aber beide Seiten anders aufgebaut sind fand ich persönlich das als eine sehr gute Lösung.
MfG
Michael Finger
Holztechniker
www.holzwurm-page.de
Holzi schrieb Hallo
am 09.02.2010 - 22:08 Uhr
Hallo Mathias,
ich habe mir dafür extra Blocke angelegt, die dann nur für die einzelnen page.php.tpl zuständig sind, da aber beide Seiten anders aufgebaut sind fand ich persönlich das als eine sehr gute Lösung.
MfG
Michael Finger
Holztechniker
www.holzwurm-page.de
nochmal gefragt: kannst du das innerhalb deiner drupalseite (administer) managen oder musst du bei änderungen jedesmal extern die dateien *.php.tpl editieren? lg mathias
Hallo Mathias, den Inhalt
am 10.02.2010 - 03:31 Uhr
Hallo Mathias,
den Inhalt der Blocke kann man innerhalb Drupal ändern.
Die Blöcke muß man in der *.php.tpl ändern
MfG
Michael Finger
Holztechniker
www.holzwurm-page.de