Ich denke du suchst nach so einem Plugin:
https://de.wordpress.org/plugins/prevent-direct-access/
Damit kannst Du einzelne Dateien in der Mediendatenbank vor dem externen Zugriff schützen. In der kommerziellen Version kann man das auch auf Rollen-Basis erreichen.
Ja so in der Art und danke für diese schnelle und sehr gute ANtwort mit dem passenden Plugin. Habe jetzt noch weitere gefunden aber leider sind die Kosten die durch diese Plugins jährlich entstehen für diese kleine Organisation zu hoch.
Jetzt besteht eher die Frage wie muss man die .htaccess anpassen damit wir hier zu diesem gewünschten Ziel kommen würden.
Ich selbst habe die Schreibweise der htaccess Datei in WordPress leider noch nicht verstanden.
Die Vorgaben wie eine htaccess-Datei auszusehen haben kommen von Apache. Dort sind die Möglichkeiten hier dokumentiert: https://httpd.apache.org/docs/2.4/howto/htaccess.html
Um deinen Wunsch mal technisch zu formulieren:
Du möchtest beim Aufruf bestimmter Pfade nur bestimmte Rollen zulassen. Pfade zu schützen ist recht simpel. Das schwierige ist die Autorisierung für den Zugriff.
Ein ganz einfacher Schutz würde durch folgenden Eintrag in der .htaccess-Datei möglich sein die in einem Verzeichnis liegt:
deny from all
Damit wäre keine einzige Datei in dem Verzeichnis für irgendjemanden per Web-Aufruf erreichbar.
Per htaccess kann man nun einzelne IP-Adressen oder dem Apache bekannte Nutzer freigeben. Du erkennst das Dilemma vermutlich: das hat nichts mit der Anmeldung von Nutzern per WordPress zu tun. Der Apache und somit auch die htaccess-Datei kennen kein WordPress und wissen somit nicht wie man hier eine Autorisierung damit vornehmen kann.
Das o.g. Plugin geht daher anders vor – und das müsstest Du eigentlich nachbauen. Es verhindert jegliche Zugriffe von außen (das kriegst Du auch hin). Sobald die so geschützten Dateien irgendwo verlinkt sind, wird jedoch nicht auf /wp-content/uploads/2023/11/datei.jpg
verlinkt sondern auf eine PHP-Datei inkl. Angabe welche Datei angefordert wird. Diese PHP-Datei prüft, ob der Pfad stimmt und gibt die Datei nur dann zurück, wenn auch die Autorisierung stimmt. Genau so eine PHP-Datei würdest Du benötigen. Ich kenne keine fertige Datei die das ermöglicht. Ist es dir möglich das nachzubauen? Wenn nein, such dir jemanden der es für dich erledigen könnte.