Wie node access Filter in search view umsetzen?
am 31.01.2020 - 10:37 Uhr in
Hallo zusammen,
in einer Drupal 8 Installation kommen search_api und Elasticsearch zum Einsatz. Die Suche ist über eine Search-View (/searchresults) umgesetzt.
Leider gibt es dabei ein kleines Problem. Searchresults berücksichtigt nicht die Berechtigungen des aktuellen Seitenbesuchers (Anonymous, Rolle x). Natürlich könnte ich in der View den Content Access Check aktivieren, aber das will ich nicht, weil dann die Zahl der Suchergebnisse für die unterschiedlichen Rollen nicht mehr richtig berechtigt wird.
Meine erste Idee war mich in hook_views_data_alter() einzuklinken und dort einen Node Access Filter zu implementieren. Aber das ist leider sehr aufwändig.
Hat jemand eine einfachere Idee, wie man der Search-View beibringen könnte, nur die Teaser anzuzeigen, die der aktuelle User auch sehen darf?
Danke & Grüße
rhodes
- Anmelden oder Registrieren um Kommentare zu schreiben
Hi. Ist vielleicht nicht die
am 31.01.2020 - 15:52 Uhr
Hi.
Ist vielleicht nicht die Beste Lösung aber du könntest das auch in den entsprechenden Templates abfragen und ausblenden.
https://drupal.stackexchange.com/questions/206943/check-if-the-user-is-l...
MfG
Robert
https://awri.ch
Ich habe eine Schweizer Tastatur und daher kein scharfes ß ;-)
Ich glaube, das ist eine
am 01.02.2020 - 00:50 Uhr
Ich glaube, das ist eine praktische und schnelle Lösung.
Drupal === lesen!
==============
WP? Auch cool!
https://intempore.com.co
..danke
am 03.02.2020 - 09:16 Uhr
.. für den Tipp mit der Templatelösung.
>>weil dann die Zahl der Suchergebnisse für die unterschiedlichen Rollen nicht mehr richtig berechtigt wird.
Ich fürchte aber, dass ich damit nicht ganz das erreiche, was ich will, denn damit bekomme ich noch kein richtiges Zähler-Ergebnis für die Anonymous.
viele Grüße, rhodes