Primary Links auch für Gäste sichtbar --> brauche ich aber nicht >_<
am 06.05.2010 - 08:11 Uhr in
Bei der zu erstellenden Seite habe ich zunächst ein extra-Menü erstellt, welches die Navigation außerhalb des Verwaltungsmenüs bereithält.
Da die fünf Oberpunkte des Inhalts auch im Kopfbereich anwählbar sein sollen, habe ich manuell in den Primary Links diese fünf Seiten hinterlegt.
Nun habe ich aber das problem, dass die letzten vier hinzugefügten Punkte (die ca 1 Woche nach dem ersten "Home"-Bereich hinzugefügt wurden) auch für Gäste angezeigt werden.
Man hat zwar keinen Zugriff auf die dahinter liegenden Inhalte, sieht aber trotzdem unschön aus, da es ein Intranet werden soll und damit kein Inhalt nach außen gelangen soll.
An den Berechtigungen habe ich nichts verändert, der Block "Primary Links" ist deaktiviert (das Theme Aberdeen Liquid setzt es anscheinen automatisch um, ohne dass ich daran was in den Optionen ändern kann) und die Berechtigungen an sich habe ich auch schon einmal neu aufgebaut.
Soe sieht es aus: (Der Home-Button wird wie gesagt ausgeblendet, was ich mir aber nicht erklären kann, warum nur der und die anderen nicht)
- Anmelden oder Registrieren um Kommentare zu schreiben
Niemand ne Idee? Am Theme
am 11.05.2010 - 10:29 Uhr
Niemand ne Idee?
Am Theme liegt es jedenfalls nicht, da es auch im multiflex-3 auftritt.
My software has no bugs - It just develops random features...
Du solltest das einfach über
am 11.05.2010 - 13:07 Uhr
Du solltest das einfach über die Blockstruktur regeln können. Jedes Menü ist ein Block, auch das Primary Menü. Du kannst die Sichtbarkeit eines Blockes für Rollen steuern und den Block nur fur angemeldete Benutzer freigeben. Dann sollten Gäste dieses Menü auch nicht mehr sehen können.
Beste Grüße
Werner
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Der Komische ist aber, dass
am 11.05.2010 - 13:31 Uhr
Der Komische ist aber, dass ich die Primary Links nicht explizit in den Kopfbereich gesetzt habe.
Tue ich das, wird nur eine Liste mit den abgelegten Links oben links auf der Seite angezeigt.
Auf der Suche nach dem Fehler bin ich in der "template.php" des themes (multiflex-3) auf einen augenscheinlichen Fehler gestoßen, finde den richtigen Punkt zum Korrigieren aber nicht:
<?php
function phptemplate_mission() {
$mission = theme_get_setting('mission');
if (preg_match('/^<\?php/', $mission)) {
$mission = drupal_eval($mission);
}
else {
$mission = filter_xss_admin($mission);
}
return isset($mission) ? $mission : '';
}
function phptemplate_breadcrumb($breadcrumb) {
if (!empty($breadcrumb)) {
return '<div class="breadcrumb">'. implode('', $breadcrumb) .'</div>';
}
}
?>
Und die page.tpl.php dürfte nicht falsch sein:
<?php if (isset($primary_links)) : ?><!-- begin primary_links -->
<?php print phptemplate_primary($primary_links); ?>
<?php endif; ?><!-- end primary_links --> ?>
Kann ich noch irgendwo gucken?
In der Style.css dürfte wohl kaum etwas drin stehen...
My software has no bugs - It just develops random features...
Die Primary Links werden von
am 11.05.2010 - 13:48 Uhr
Die Primary Links werden von Deinem Theme immer ausgegeben, wenn was drin steht, auch wenn Du sie nicht explizit in eine Region schiebst. Trotzdem ist es ein Block, der auf der Block Übersichtsseite konfiguriert werden kann in bezug auf die Sichtbarkeit, unabhängig von der Region. Also den Block Primary Links konfigurieren und nur für angemeldetet Benutzer erlauben.
Beste Grüße
Werner
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Die Berechtigungen sind für
am 12.05.2010 - 10:34 Uhr
Die Berechtigungen sind für den Primary-Links-Block alle richtig gesetzt.
Die habe ich auch neu aufbauen lassen und update.php ist auch durchgelaufen...
Weiß langsam echt nicht mehr weiter.
Ich war sogar schon soweit, dass ich das Menü komplett gelöscht und neu aufgesetzt habe, brachte aber auch nichts.
My software has no bugs - It just develops random features...
Volle Kontrolle!
am 19.05.2010 - 07:31 Uhr
Um eine genaue Kontrolle über die Sichtbarkeit von Menüpunkten zu bekommen benötigst du ein Modul welches dir genau dies ermöglicht. Drupal ermöglicht es nicht auf einzelne Menüpunkte Berechtigungen zu vergeben. Der einzige Ausweg, ohne Modul, wäre die Verwendung von „Primary Links“ und „Secondary Links“ wobei Erstere sichtbar sind für alle und das zweite Menü nur für Authentifizierte Benutzer (was dann im Blockmenü eingestellt werden müsste). Für eine genaue Bestimmung von Berechtigungen von einzelnen Menüpunkten kannst du das Menu Access Modul verwenden.
Wo soll in deiner
template.php
-Datei bitte ein „augenscheinlicher Fehler“ sein?Zu deinem
page.tpl.php
-Code: Sobald sich irgendwas in den „Primary Links“ befindet werden diese auch ausgegeben. Solltest du dies ausschließlich über das Blockmenü von Drupal steuern wollen, musst du diese Zeile komplett löschen und den Primary-Links-Block mit CSS stylen.NERVENHAMMER - Der Club für abseitige Medienkultur.