[gelöst] Kein Login-Block und /?q=user bei eigener page.tpl.php
am 01.07.2011 - 10:55 Uhr in
hallo allerseits!
bin gerade neu bei drupalcenter. zunächst einmal großes lob an den betreiber und die community. war so oft schon "anonym" hier :)
nun zum problem: seit gestern umgestiegen auf Drupal 7.4. möchte ein eigenes template bzw. theme "from scratch" erstellen (aus eigenem anspruch und zum erlernen der theme/template engine) und habe das problem dass, sobald ich eine eigene template.tpl.php bzw. page.tpl.php mit dem php-code für main menu etc. erstelle, keinen login-block auf der seite mehr sehe, und - kurioserweise! - auch nicht über mysite.com/user bzw. /?q=user einloggen kann.
woran liegt dies nun? ich suche quasi ein code-snippet in php (wahrscheinlich eine core-variable), mit der ich den login-block wieder auf die seite bekomme.
mir sind weiterhin die regionen im template überhaupt nicht klar. ich definiere header, sidebars und footer in der .info-datei, aber wie fülle ich diese denn mit DIVs, bzw. dem inhalt, den ich dort haben will?
ich arbeite mit Aptana Studio 3, GIMP und Inkscape (für grafik) unter Windows 7. meine distrubution ist die aktuelle Drupal 7.4 deutschsprachiges spin von drupalcenter auf MySQL. hoster ist all-inkl.com.
vielen dank fürs lesen!
beste grüße aus M'Gladbach und Köln :)
- Anmelden oder Registrieren um Kommentare zu schreiben

Blöcke
am 03.07.2011 - 02:27 Uhr
mir sind weiterhin die regionen im template überhaupt nicht klar. ich definiere header, sidebars und footer in der .info-datei, aber wie fülle ich diese denn mit DIVs, bzw. dem inhalt, den ich dort haben will?
Du legst zunächst die Regionen an und füllst diese dann über /admin/structure/block mit Blöcken. Du musst also zB den den Login-Block in eine Seitenspalte verschieben, wenn er dort erscheinen soll. Gibst du denn den Haupt-Inhalt irgendwo aus bzw. steht die entsprechende Variable in der page.tpl.php? Wenn du dort zB
<?php print render($page['content']); ?>löschst, dürftest du in der Tat nix mehr sehen.das ist es!
am 04.07.2011 - 06:55 Uhr
Wenn du dort zB
<?php print render($page['content']); ?>löschst, dürftest du in der Tat nix mehr sehen.das ist die lösung meines problems! zwar hatte ich genau diesen code in der page.tpl.php angegeben, nicht aber den code für die sidebar, wo der block erscheinen sollte...
damit habe ich nun auch den zusammenhang zwischen blöcken und regionen verstanden.
was in meiner datei gefehlt hat war folgendes:
<?php print render($page['sidebar_first']); ?>das heisst, ich brauche nur die print render$()-funktion und fülle die mit dem wert der entsprechenden region, die ausgegeben werden soll. das ganze kann man dann in ein DIV verschachteln und per CSS formatieren.
vielen dank für diese hilfe. das ist gold wert!
LG!