WordPress-functionen und eingeschränkter Zugriff auf Kategorien

Ich habe einen WordPress-Blog, um Inhalte mit einigen Leuten zu teilen. Benutzer müssen sich anmelden, um auf diese Website zugreifen zu können.

Ich habe in diesem Blog neue Rollen und neue functionen erstellt.

Ich habe einige Artikel, die zu einer bestimmten Kategorie gehören, die ich nur mit Personen mit einer bestimmten Rolle teilen möchte.

Gibt es einen Haken, den ich verwenden könnte, wenn jemand einen Artikel anfordert, und wo ich testen könnte, ob der aktuelle Benutzer die guten Fähigkeiten hat, und so die Anfrage bei Bedarf ändern kann?

Solutions Collecting From Web of "WordPress-functionen und eingeschränkter Zugriff auf Kategorien"

Ich denke, der beste Hook sollte 'template_redirect' , wenn dieser Hook abgefeuert wird, ist die Hauptabfrage bereits gesetzt, so dass Sie sich das abgefragte Objekt ansehen können und wenn der Benutzer keine erforderliche Fähigkeit hat, können Sie die Anfrage irgendwo redirect:

 add_action( 'template_redirect', function() { if ( ( is_category( 'special-category' ) || is_singular() && has_category( 'special-category', get_queried_object() ) ) && ! is_user_logged_in() || current_user_can( 'special-cap' ) ) { wp_safe_redirect( home_url() ); exit(); } } );