Menüpunkt Forum nur für eingeloggte sichtbar
Eingetragen von nepf (23)
am 24.01.2008 - 10:21 Uhr in
am 24.01.2008 - 10:21 Uhr in
Ich habe ein Forum, das aber nur von eingeloggten usern genutzt werden soll.
Das habe ich mit dem Modul Forum Access (und ACL) gelöst - klappt bestens.
Für das Forum habe ich aber einen Menüpunkt in den Primary Links eingefügt, der ist und bleibt aber für alles Besucher der Seite sichtbar - und genau das würde ich gern ändern. Ich möchte das so haben, dass dieser Menüpunkt erst dann angezeigt wird, wenn man sich eingeloggt hat.
Geht das?
Wie?
tschüß nepf
- Anmelden oder Registrieren um Kommentare zu schreiben
sorry, noch mal nach oben
am 25.01.2008 - 10:37 Uhr
sorry, noch mal nach oben schieb.
tschüß nepf
bis jetzt
am 25.01.2008 - 10:53 Uhr
hab ich dafür auch noch keinen Weg gefunden
immer blieben die Menü-Links sichtbar und das provozierte dann bei nicht-angemeldeten Besuchern "403-"er Seiten
meine Lösung bisher:
alles was nicht öffentlich ist und was nicht sichtbar sein soll vor der Anmeldung, in einen Block setzen, der selbst nicht öffentlich ist...
irgendwo hab ich gelesen, daß die Anzeige im Menü für unveröffentlichte Nodes ein Bug sei... der eigentlich schon entfernt worden sein sollte ... dem ist aber eben leider nicht so ..
danke für die Antwort. Ist
am 25.01.2008 - 13:23 Uhr
danke für die Antwort.
Ist ja ne blöde Sache.
Würde den menüpunkt wirklich gern in den primary links haben - naja.
tschüß nepf
Theming
am 25.01.2008 - 13:47 Uhr
Das Verschwindenlassen von Menüpunkten könnte man sicher durch Theming in der template.php lösen:
<?php
function phptemplate_menu_links($links) {
global $user; // !!!!!
if (!count($links)) {
return '';
}
$level_tmp = explode('-', key($links));
$level = $level_tmp[0];
$output = "<ul class=\"links-$level\">\n";
foreach ($links as $index => $link) {
if ($user->uid == 0 && check_plain($link['title']) == 'forums') continue; // !!!!!
$output .= '<li';
if (stristr($index, 'active')) {
$output .= ' class="active"';
}
$output .= ">". l($link['title'], $link['href'], $link['attributes'], $link['query'], $link['fragment']) ."</li>\n";
}
$output .= '</ul>';
return $output;
}
?>
Die Zeilen mit
// !!!!!
am Ende sind von mir hinzugefügt (nicht getestet)."$link['title']" in der 2., von mir eingefügten Zeile müsste man dann an seine Menütitel anpassen.
aaah-ja, das klingt
am 25.01.2008 - 15:42 Uhr
aaah-ja, das klingt vielversprechend,
aber ich bin noch ziemlich neu bei drupal. Mein theme (blix) hat gar keine template.php. Habe sie mit deinem code erstellt, aber das klappt noch nicht. Muss ich sonst noch was in den tmplate-files machen?
tschüß nepf
Verusch mal das ?> am Ende
am 25.01.2008 - 15:44 Uhr
Verusch mal das ?> am Ende der templete Datei wegzulassen.
---
www.party-riebel.de