Möchten Sie Medien-Uploads nach Benutzer in WordPress organisieren?
Wenn Sie eine Website mit mehreren Autoren betreiben, möchten Sie vielleicht verhindern, dass Benutzer auf die Mediendateien anderer Personen zugreifen. Auf diese Weise können Sie sicherstellen, dass die Autoren nicht versehentlich die Bilder der anderen löschen.
In diesem Artikel zeigen wir Ihnen, wie Sie Medien-Uploads nach Benutzern in WordPress organisieren können.
Warum den Autorenzugang zu Medien-Uploads einschränken?
Wenn Sie einen WordPress-Blog mit mehreren Autoren haben, laden Ihre Autoren möglicherweise viele verschiedene Bilder hoch. Das kann es für einen Autor schwierig machen, das richtige Bild zu finden, oder er könnte die Mediendatei einer anderen Person versehentlich löschen oder bearbeiten.
Dies kann zu allen möglichen Problemen führen, z. B. zu geringer Produktivität, viel zusätzlicher Arbeit für Website-Administratoren und -Redakteure und einem komplizierten Redaktionsablauf.
Dieser unbegrenzte Zugriff kann auch ein Problem für den Datenschutz darstellen. Wenn Sie beispielsweise an einem neuen Produkt oder einer Blogpost-Idee arbeiten, könnten andere Autoren vertrauliche Bilder in der Mediathek sehen, bevor Sie eine öffentliche Ankündigung machen.
Wenn Sie eine WordPress-Mitgliedswebsite haben, können Beitragszahler möglicherweise sogar über die Medienbibliothek auf Premium-Mediendateien zugreifen.
Schauen wir uns also an, wie Sie den Zugriff auf Medien-Uploads in Ihrem WordPress-Administrationsbereich einschränken können. Verwenden Sie einfach die unten stehenden Links, um direkt zur gewünschten Methode zu springen:
Methode 1: Organisieren von Medien-Uploads durch Benutzer mit einem Plugin (schnell und einfach)
Der einfachste Weg, den Zugriff auf Medien-Uploads zu beschränken, ist die Verwendung des Frontier-Plugins Restrict Access. Dieses kostenlose Plugin prüft, ob ein Benutzer die Berechtigung edit_others_posts
hat, die es ihm erlaubt, die Beiträge eines anderen Benutzers zu bearbeiten.
Standardmäßig gewährt WordPress diese Fähigkeit jedem, der die Rolle des Website-Administrators oder -Editors hat. Wenn Sie dies ändern möchten, können Sie den Benutzerrollen in WordPress Fähigkeiten hinzufügen oder entfernen.
Wenn der Benutzer nicht über die Berechtigung edit_others_posts
verfügt, verhindert dieses Plugin, dass er auf die Dateien anderer Benutzer in der WordPress-Mediathek zugreifen kann. Auf diese Weise können Sie Medien-Uploads nach Benutzern organisieren, ohne den Zugriff für Administratoren und Redakteure zu beschränken.
Dieses Plugin ist sofort einsatzbereit und es gibt keine Einstellungen, die Sie konfigurieren müssen. Sie können das Frontier Plugin zur Zugangsbeschränkung also einfach installieren und aktivieren. Weitere Details finden Sie in unserer Anleitung zur Installation eines WordPress-Plugins.
Hinweis: Sie werden feststellen, dass das Plugin nicht mit den neuesten WordPress-Versionen getestet wurde. Das heißt, wir haben es selbst getestet und es funktioniert gut für dieses Tutorial.
Wenn Sie Fragen haben, können Sie unseren Artikel darüber lesen, ob Sie ungetestete WordPress-Plugins verwenden sollten. Wenn Sie neuere Plugins finden, die für diesen Zweck besser funktionieren, lassen Sie es uns in den Kommentaren wissen.
Methode 2: Organisieren von Medien-Uploads durch Benutzer mit Code (besser anpassbar)
Die erste Methode ist schnell und einfach. Allerdings kann sie recht begrenzt sein, da Sie nur Benutzer ohne die Berechtigung edit_others_posts
(Site-Administratoren und Redakteure) daran hindern können, auf die Mediendateien anderer Benutzer zuzugreifen.
Wenn Sie ein Website-Administrator sind, kann es vorkommen, dass Sie allen Benutzern (außer sich selbst) den Zugriff auf die Mediendateien anderer Personen verwehren wollen.
In diesem Fall können Sie stattdessen benutzerdefinierten Code zu Ihrem WordPress-Blog hinzufügen. Wir zeigen Ihnen zwei Codeschnipsel: einen, der den Zugriff auf Mediendateien für Nicht-Admin-Benutzer einschränkt, und den anderen für Benutzer ohne die Berechtigung edit_others_posts
.
Oft werden Sie in Anleitungen aufgefordert, benutzerdefinierten Code zu Ihrem WordPress-Theme hinzuzufügen. Dies ist jedoch nicht empfehlenswert, da einfache Fehler oder Tippfehler in Ihrem Code zu häufigen WordPress-Fehlern führen oder sogar Ihre Website komplett zerstören können.
Deshalb empfehlen wir WPCode.
WPCode ist das beste Code-Snippets-Plugin, das von über 1 Million WordPress-Websites verwendet wird. Es macht es einfach, benutzerdefinierten Code in WordPress hinzuzufügen, ohne die Datei functions.php bearbeiten zu müssen.
Als Erstes müssen Sie das kostenlose WPCode-Plugin installieren und aktivieren. Weitere Einzelheiten finden Sie in unserer Schritt-für-Schritt-Anleitung für die Installation eines WordPress-Plugins.
Nach der Aktivierung gehen Sie zu Code Snippets “ Snippet hinzufügen.
Hier sehen Sie alle vorgefertigten Snippets, die Sie zu Ihrer Website hinzufügen können. Dazu gehören Snippets, mit denen Sie WordPress-Kommentare vollständig deaktivieren, Dateien hochladen können, die WordPress standardmäßig nicht unterstützt, und vieles mehr.
Bewegen Sie den Mauszeiger einfach über „Benutzerdefinierten Code hinzufügen“ und wählen Sie dann „Snippet verwenden“.
Geben Sie zunächst einen Titel für das benutzerdefinierte Code-Snippet ein. Dies kann alles sein, was Ihnen hilft, das Snippet im WordPress-Dashboard zu identifizieren.
Öffnen Sie anschließend das Dropdown-Menü „Code-Typ“ und wählen Sie „PHP Snippet“.
Im Bereich „Codevorschau“ können Sie einen der folgenden Codeschnipsel einfügen:
Option 1: Einschränkung des Zugriffs auf Mediendateien für Nicht-Admin-WordPress-Benutzer
add_filter( 'ajax_query_attachments_args', 'user_show_attachments' );
function user_show_attachments( $query ) {
$user_id = get_current_user_id();
// Check if the current user is not an administrator
if ( $user_id && !current_user_can('administrator') ) {
$query['author'] = $user_id;
}
return $query;
}
Option 2: Einschränkung des Zugriffs auf Mediendateien für WordPress-Benutzer ohne Post-Editing-Berechtigung
add_filter( 'ajax_query_attachments_args', 'user_show_attachments' );
function user_show_attachments( $query ) {
$user_id = get_current_user_id();
// Checks if the current user is logged in (i.e., $user_id is not 0) and does not have the capabilities to activate plugins or edit others' posts.
if ( $user_id && !current_user_can('activate_plugins') && !current_user_can('edit_others_posts
') ) {
$query['author'] = $user_id;
}
return $query;
}
Blättern Sie dann zum Abschnitt „Einfügen“. WPCode kann Ihren Code an verschiedenen Stellen einfügen, z. B. nach jedem Beitrag, nur im Frontend oder nur im Adminbereich.
Um den benutzerdefinierten PHP-Code auf Ihrer gesamten WordPress-Website zu verwenden, klicken Sie auf „Automatisch einfügen“, falls dies nicht bereits ausgewählt ist. Öffnen Sie dann das Dropdown-Menü „Standort“ und wählen Sie „Überall ausführen“.
Danach können Sie zum oberen Rand des Bildschirms scrollen und auf den Schalter „Inaktiv“ klicken, damit er sich in „Aktiv“ ändert.
Klicken Sie abschließend auf „Snippet speichern“, um das PHP-Snippet zu aktivieren.
Jetzt haben die Benutzer nur noch Zugriff auf die Dateien, die sie in die WordPress-Mediathek hochladen.
Wir hoffen, dass dieser Artikel Ihnen geholfen hat, die Medien-Uploads der Nutzer auf Ihrer WordPress-Website besser zu organisieren. Als Nächstes können Sie sich unseren ultimativen WordPress-Sicherheitsleitfaden ansehen oder sich unsere Expertenauswahl der besten Kontaktformular-Plugins für WordPress ansehen.
Wenn Ihnen dieser Artikel gefallen hat, dann abonnieren Sie bitte unseren YouTube-Kanal für WordPress-Videotutorials. Sie können uns auch auf Twitter und Facebook finden.
Syed Balkhi
Hey WPBeginner readers,
Did you know you can win exciting prizes by commenting on WPBeginner?
Every month, our top blog commenters will win HUGE rewards, including premium WordPress plugin licenses and cash prizes.
You can get more details about the contest from here.
Start sharing your thoughts below to stand a chance to win!
Joshua Owolabi
I really enjoy all your tutorials kudos to you.
Although I am unable to use to build something due to lack of resources but you are WELDONE
WPBeginner Support
Glad our tutorials are helpful
Admin
Teddu
I would like users to be able to upload content, and once its approved go onto a new page. the user could then edit it once it is there.
Think, similar how airbnb let users upload photos and descriptions of their holiday homes, and it appears in a page.
do you know a plug in for this functionality?
WPBeginner Staff
It is certainly possible but can potentially open up your site to spam, malicious hack attempts. Please see out article on how to allow users to submit posts in WordPress. You can allow users to upload media without registration.
fredtgorski
The one thing I would really(!) love to see on media library would be the ability to search media per post and/or date of upload. Every time I need to reuse an image I uploaded for a very old post, it is painfull to find it again. Sometimes I simply give up and reupload it…
agsm
sir , i want to design a wordpress page where user will upload some documents with following feilds (name,e-mail,title,summary and file upload) after submit , it should appear in dashboard and when admin approve it should be show on page (all listing of upload details which has been approved by admin ) , its possible,
thanks in advance!!!
Michel
https://wordpress.org/plugins/wp-user-frontend/
Jan
Do you also have a solution to enable visitors (non-logged-in users) to upload content?
Tony Franco
Very nice! Thank you!!