Trusted WordPress tutorials, when you need them most.
Beginner’s Guide to WordPress
WPB Cup
25 Million+
Websites using our plugins
16+
Years of WordPress experience
3000+
WordPress tutorials
by experts

Så här organiserar du enkelt mediauppladdningar efter användare i WordPress

Efter att ha drivit en blogg med flera författare i flera år har vi upptäckt att det finns situationer där det blir viktigt att organisera medieuppladdningar efter användare. Vår erfarenhet är att när ditt team av skribenter växer, så växer också potentialen för kaos i mediehanteringen.

Vi har stött på scenarier där författare av misstag har ändrat eller usunąć varandras bilder, vilket har lett till trasiga inlägg. I en instancja resulterade ett felplacerat klick i att en viktig bild usunąć, vilket försenade publiceringen av en viktig artikel.

För att förhindra detta kan du begränsa eller organisera mediauppladdningar av användare i WordPress. Den här funktionen erbjuds inte som standard, så vi ska visa dig vårt bästa sätt att göra detta.

How to organize media uploads by users in WordPress

Varför begränsa författarens åtkomst till mediauppladdningar?

Om du har en WordPress-blogg med flera författare kan dina författare uploada många olika images. Detta kan göra det svårt för en författare att hitta rätt image, eller så kan de av misstag radera eller editera en annan persons media file.

Detta kan orsaka allsköns problem, bland annat dålig produktivitet, mycket extraarbete för site admins och editors och ett komplicerat redaktionellt arbetsflöde.

Denna obegränsade tillgång kan också vara ett problem för integriteten. Om du till exempel arbetar på en idé till en ny produkt eller ett blogginlägg kan andra författare se konfidentiella images i mediabiblioteket innan du gör ett offentligt tillkännagivande.

Om du har en WordPress membership site kan contributors till och med få tillgång till premium media files via mediabiblioteket.

Med detta sagt, låt oss ta en titt på hur du begränsar vem som kan se mediauppladdningar i din WordPress obszar administracyjny.

Hur man organiserar mediauppladdningar av användare med WPCode

På den tiden hittade vi ett plugin som du kunde använda för att hindra användare utan efterredigeringsbehörighet från att komma åt andra användares filer i WordPress mediebibliotek. Pluginet var enkelt att använda, men det uppdateras inte längre.

Dessutom kan plugin-programmet vara ganska begränsat, eftersom du bara kan hindra användare utan edit_others_posts-behörighet (webbplatsadministratörer och redaktörer) från att komma åt andra användares mediefiler.

Om du är administratör för en site kan det uppstå en situation där du vill limitera alla användare (utom dig själv) från att komma åt andras media files.

I så fall kan du lägga till custom code till din WordPress blogg istället. Vi visar dig två code snippets: en som begränsar åtkomsten till media files för användare som inte är administratörer och en för användare utan behörigheten edit_others_posts.

Ofta kommer guider att be dig att add custom code till din WordPress tema. Detta rekommenderas dock inte, eftersom enkla misstag eller skrivfel i din kod kan orsaka vanliga WordPress error eller till och med förstöra din site helt.

Det är därför vi rekommenderar WPCode.

WPCode är det bästa code snippets plugin som används av över 1 miljon WordPress-webbplatser. Det gör det enkelt att add to custom code i WordPress utan att behöva edit filen functions.php.

Det första du behöver göra är att installera och aktivera det gratis pluginet WPCode. För mer detaljer, se vår Step-by-Step guide om hur du installerar ett WordPress plugin.

Efter aktivering, head över till Code Snippets ” Add Snippet.

How to add custom PHP snippets to your site using WPCode

Här ser du alla färdiga fragment kodu som du kan lägga till på din webbplats. Dessa inkluderar fragment kodu som gör att du helt kan inaktivera WordPress-kommentarer, avaktivera sidor med bildbilagor och mycket mer.

Bara hovera musen över ”Add Your Custom Code” och välj sedan ”Use snippet”.

Adding a custom code snippet to WordPress

Till att börja med skriver du in en titel för det anpassade code snippet. Det kan vara vad som helst som hjälper dig att identifiera snippet i WordPress dashboard.

Efter det öppnar du dropdown ’Code Type’ och väljer ’PHP Snippet’.

Restricting access to the media library using WPCode

I ”Code Preview” area kan du klistra in ett av följande code snippets:

Alternativ 1: Begränsning av åtkomst till media file för användare som inte är administratörer i WordPress

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;
}

Den här koden kontrollerar om den aktuella användaren inte är administratör. Om de inte är administratörer filtreras mediebiblioteket så att det bara visar de filer som användaren själv har laddat upp.

Det innebär att vanliga användare bara kan se och hantera sina egna mediefiler, medan administratörer fortfarande kan se och hantera alla filer.

Alternativ 2: Begränsning av åtkomst till media file för WordPress-användare utan behörighet att redigera post

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;
} 

Den här koden är lite mer specifik. Den kontrollerar om den aktuella användaren är inloggad och inte har behörighet att aktivera plugins eller redigera andras inlägg. Om en användare uppfyller dessa villkor kan han eller hon bara se och hantera sina egna mediefiler.

Detta gör att administratörer och redaktörer kan se alla filer, medan författare och bidragsgivare bara kan komma åt sina egna uppladdningar.

Därefter rullar du bara till sektionen ”Insertion”. WPCode kan add din kod till olika locations, till exempel efter varje post, on the front end only, eller admin only.

För att använda den customiserade PHP-koden på hela din WordPress website, click ’Auto Insert’ om den inte redan är vald. Öppna sedan dropdown-menyn ”Location” och välj ”Run Everywhere”.

Running custom PHP code across your website using WPCode

Efter det är du redo att rulla högst upp på vyn och klicka på ”Inaktiverad” toggle så att den ändras till ”Aktiv”.

Slutligen klickar du på ”Save Snippet” för att göra PHP snippet live.

How to restrict access to media files using code

Nu har användarna bara tillgång till de filer som de uploadar till mediabiblioteket i WordPress.

Lär dig fler sätt att hantera WordPress-filer

Förutom att begränsa mediauppladdningar i WordPress, kanske du också vill kolla in przewodnikerna nedan för att bättre hantera dina filer:

Vi hoppas att den här artikeln hjälpte dig att bättre organisera mediauppladdningar av användare på din WordPress-webbplats. Därefter kan du kolla in våra expertval av de bästa slider-pluginsen för WordPress och vår przewodnik om hur du enkelt kan lazy-ladda bilder i WordPress.

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

Avslöjande: Vårt innehåll stöds av våra läsare. Det innebär att om du klickar på några av våra länkar, kan vi tjäna en provision. Se hur WPBeginner finansieras, varför det är viktigt, och hur du kan stödja oss. Här är vår editoriala process.

Avatar

Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi with over 16 years of experience in WordPress, Web Hosting, eCommerce, SEO, and Marketing. Started in 2009, WPBeginner is now the largest free WordPress resource site in the industry and is often referred to as the Wikipedia for WordPress.

Den ultimata WordPress-verktygslådan

Få GRATIS tillgång till vår verktygslåda - en samling WordPress-relaterade produkter och resurser som varje professionell användare bör ha!

Reader Interactions

9 kommentarerLämna ett svar

  1. 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 :)

      Administratör

  2. 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?

  3. 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.

  4. 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…

  5. 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!!!

  6. Tony Franco

    Very nice! Thank you!! :)

Lämna ett svar

Tack för att du väljer att lämna en kommentar. Tänk på att alla kommentarer modereras enligt våra policy för kommentarer, och din e-postadress kommer INTE att publiceras. Vänligen använd INTE nyckelord i namnfältet. Låt oss ha en personlig och meningsfull konversation.