Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Anfängerfragen ›

Rechte beim Block mit php Befehl?

Eingetragen von Denker (129)
am 13.01.2011 - 08:43 Uhr in
  • Anfängerfragen
  • Drupal 6.x

Ich möchte gerne einen Block einrichten, und habe ein Rechte-Problem bei Blöcken

Ich habe die Rolle
- authenticated user (Standard Drupal)
- Moderatoren (eigene Rolle)

Bei den "authenticated user" soll der Block angezeigt werden, bei den Moderatoren aber NICHT.
Bei der Grundauswahl kann man zwar "authenticated user" auswählen, der Block wird aber trotzdem bei den "Moderatoren" angezeigt, da diese ja automatisch auch "authenticated user" sind (nicht abwählbar)

Man müsste doch bei "Nur anzeigen, wenn der folgende PHP-Code TRUE zurückgibt (PHP-Modus für Experten)." etwas entsprechendes eingeben können, oder?

Zusätzlich soll der Block auf allen Seiten angezeigt werden, AUSSER auf /moderatoren

Gibt es hier einen Experten dafür?

Drupal 6

‹ erledigt: Drupal 7 - Benutzertheme Ansicht ändern sodass nur überschrift angezeigt wird ? ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Rollenabfrage

Eingetragen von stBorchert (6003)
am 13.01.2011 - 10:01 Uhr

Hallo.
Probier mal folgenden Code:

<?php
global $user;
if (
in_array('authenticated user', $user->roles) && !in_array('moderator', $user->roles)) {
  return
TRUE;
}
return
FALSE;
?>

hth,
 Stefan

  • Anmelden oder Registrieren um Kommentare zu schreiben

Da ich persönlich ja auch

Eingetragen von Thoor (3678)
am 13.01.2011 - 10:25 Uhr

Da ich persönlich ja auch immer so meine PHP Anweisungs Probleme habe, ergänze ich immer um eine weitere Rolle.
Gast - Authentifizierter User - Mitglied - Moderator

Und die Rolle "Mitglied" erhält jeder registrierte Nutzer, wenn er sich das erste Mal angemeldet hat mit einer RULES Anweisung.

Somit habe ich eigentlich nur Gäste - Mitglieder und Moderatoren und kann die Blöcke entsprechend einzeln zuweisen.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hallo Stefan ja super, das

Eingetragen von Denker (129)
am 13.01.2011 - 10:29 Uhr

Hallo Stefan

ja super, das hat prima geklappt, es klasse. Vielen Dank !

Kannst Du mir nochmal helfen und eine Funktion einbauen, dass der Block "überall" angezeigt wird, außer auf .../moderatoren

thx

Martin

  • Anmelden oder Registrieren um Kommentare zu schreiben

Pfad

Eingetragen von stBorchert (6003)
am 13.01.2011 - 10:33 Uhr

<?php
return $_GET['q'] != 'moderatoren';
?>

 Stefan

  • Anmelden oder Registrieren um Kommentare zu schreiben

hmmm, das habe ich jetzt

Eingetragen von Denker (129)
am 13.01.2011 - 10:49 Uhr

hmmm, das habe ich jetzt einfach darunter gesetzt (unter den vorherigen) aber klappt bei mir nicht...
mach ich was falsch?

  • Anmelden oder Registrieren um Kommentare zu schreiben

Sichtbarkeit

Eingetragen von stBorchert (6003)
am 13.01.2011 - 21:53 Uhr

Wann genau soll der Block denn jetzt angezeigt werden?

"Auf allen Seiten ausser 'moderatoren', aber nur wenn der Benutzer die Rolle 'authenticated user', jedoch nicht die Rolle 'moderator' hat"?

<?php
global $user;
if (
in_array('authenticated user', $user->roles)) {
  if (
in_array('moderator', $user->roles) || $_GET['q'] == 'moderatoren') {
    return
FALSE;
  }
  else {
    return
TRUE;
  }
}
return
FALSE;
?>

  • Anmelden oder Registrieren um Kommentare zu schreiben

Vielen Dank für die

Eingetragen von Denker (129)
am 14.01.2011 - 16:35 Uhr

Vielen Dank für die Hilfe

leider klappt das "ausschalten" auf der Seite "moderatoren" noch nicht, hmmm, ich suche noch ob ich einen Fehler gemacht habe...

Danke für die Unterstützung

  • Anmelden oder Registrieren um Kommentare zu schreiben

Zitat: leider klappt das

Eingetragen von Exterior (2903)
am 14.01.2011 - 16:51 Uhr
Zitat:

leider klappt das "ausschalten" auf der Seite "moderatoren" noch nicht

Öhm, kann man das nicht in den Block-Einstellungen des Blocks unter admin/build/block regeln? Da kann man doch unten festlegen, wo ein Block auftauchen soll.

Übrigens, nur so als Anregung:

Soweit ich weiß ist <?php in_array('Rollen-Bezeichnung', $user->roles) ?> langsamer als <?php isset($user->roles[Rollen-ID]) ?>.

Da kann man evtl. ein winziges Stück Aufbau-Zeit einsparen.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Dynamische Ansicht von Seiteninhalt (als Tabelle?)
  • Ich brauche dringen Hilfe zu Updates oder ggf. wwie geht Composer?
  • Medien und andere Daten mit Feeds von Drupal 7 auf Drupal 10 migrieren
  • Rolle erstellen nicht zu finden
  • für drupal11 ein Slider Modul
  • [gelöst] W3CSS Paragraphs Views
  • Drupal 11 neu aufsetzen und Bereiche aus 10 importieren
  • Wie erlaubt man neuen Benutzern auf die Resetseite zugreifen zu dürfen.
  • [gelöst] Anzeigeformat Text mit Bild in einem Artikel, Drupal 11
  • Social Media Buttons um Insteragram erweitern
  • Nach Installation der neuesten D10-Version kein Zugriff auf Website
  • Composer nach Umzug
Weiter

Neue Kommentare

  • Naja ich habe nichts an den
    vor 1 Woche 3 Tagen
  • Ich sehe ja dein Theme nicht
    vor 1 Woche 4 Tagen
  • Zwischenzeitlich habe ich
    vor 1 Woche 6 Tagen
  • Ok ich habe die anderen
    vor 1 Woche 6 Tagen
  • Toll
    vor 2 Wochen 14 Stunden
  • Vielen Dank
    vor 2 Wochen 14 Stunden
  • Vielen Dank für diese sehr
    vor 2 Wochen 15 Stunden
  • Wieso willst du dass denn
    vor 2 Wochen 18 Stunden
  • Oh, der Klassiker unter den
    vor 2 Wochen 19 Stunden
  • Naja ich achte immer drauf on
    vor 2 Wochen 1 Tag

Statistik

Beiträge im Forum: 250259
Registrierte User: 20473

Neue User:

  • JeffreyPaf
  • StevenEness
  • ocvk2810

» Alle User anzeigen

User nach Punkten sortiert:
wla9463
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 12 Gäste online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association