Hur man visar innehåll baserat på WordPress-användarroller

Obs: I nästa ämne du kommer att läsa kommer du att lära dig om: Hur man visar innehåll baserat på WordPress-användarroller

När du skapar en WordPress-webbplats är det ofta bra att tillhandahålla innehåll eller funktionalitet baserat på en användares roll eller förmåga. Till exempel kanske du vill visa speciellt innehåll på din webbplats, men bara för administratörer. Det är bara en av många möjligheter.

Det är ganska användbart att WordPress har en inbyggd funktion som hjälp. Funktionen current_user_can() låter dig kontrollera behörigheterna för den anslutna användaren. Baserat på den informationen kan du ge dem allt speciellt du vill ha. Omvänt kan du också inaktivera vissa objekt.

För att fortsätta med det speciella innehållsexemplet som nämns ovan, kommer vi att dyka in i några grundläggande utdrag som låter oss lägga till den här funktionen.

Exempel 1: endast admin

I det här exemplet kommer vi att verifiera om den anslutna användaren som kommer åt vår sida är en webbplatsadministratör. Om så är fallet kommer ett litet välkomstmeddelande att visas.

Innan du anger koden bör det noteras att det finns mer än ett sätt att verifiera användarbehörigheter. WordPress Codex säger att vi kan tillhandahålla befintliga användarroller i funktionen current_user_can(), men det rekommenderas inte. Det kan finnas felaktigheter som leder till att något fel händer.

Istället kan vi använda funktionerna för just den användarrollen. Det finns en komplett lista över funktioner som varje användarroll har i Codex. Så istället för att kontrollera om användaren är en administratör kan vi kontrollera om de har specifika funktioner som pluginaktivering.

Låt oss nu titta på en kod. Följande kommer att visas i den temamall du väljer.

          

Howdy, Administrator!

I det här fallet kontrollerar vi om användaren kan aktivera tillägget, vilket bara administratörer (och, vid installationer på flera platser, superadmins) kan göra. .

Exempel 2: var personlig med medlemmarna

Medan det första exemplet visar ett allmänt budskap kan vi också skapa en mer personlig upplevelse. Detta är särskilt viktigt om du driver en medlemssida. Hjälp till att bygga upp den känslan av gemenskap.

Här kommer vi att lägga till ett personligt meddelande inklusive användarnamnet. Vi kan dra nytta av denna information genom funktionen get_current_user() . Vi kommer också att anta att våra medlemmar tilldelas prenumerantrollen i WordPress.

          

Howdy, user_firstname; ?>! Thanks for being a part of our community.

BTW, möjligheten att läsa ett inlägg är den lägsta nivån i WordPress. Därför gäller det alla nivåer av användare, inte bara prenumeranter. Detta säkerställer bara att vi inte lämnar någon utanför.

Förutom att verifiera läsbarheten visar vi även användarnamnet i meddelandet. Det finns dock fler möjligheter angående användardata som kan läggas till mixen.

Exempel 3: en anpassad titel, baserad på användarens kapacitet

För vårt sista exempel, låt oss göra något lite mer dramatiskt. Vi kommer att tillhandahålla olika tematitlar, beroende på användarens förmåga.

Genom funktionen get_header() tillåter WordPress användningen av flera rubrikfiler. Och att visa dem baserat på användarförhållanden kan vara till stor hjälp. Till exempel kan en webbplatsmedlem dra nytta av en mycket personlig header. Icke-medlemmar kan se något mer generiskt.

I vår kod dubbelkollar vi om vår användare har läsbarhet. Och vi kommer också att lägga till ytterligare verifiering för att se till att de är inloggade, via is_user_logged_in(), för säkerhets skull.

Om du använder den här koden i ett projekt kommer den att ersätta den i alla mallar.

          



          


Ovan kontrollerar vi om användaren har rätt kapacitet och om de verkligen är inloggad. Om båda objekten returnerar true, kommer den anpassade rubrikfilen att visas. Annars kommer vårt temas standardtitel att visas.

Möjlighet att göra mer för användarna

Exemplen ovan är bara små sätt vi kan förbättra användarupplevelsen på. Men det finns också potential att göra mer. Den enda gränsen är verkligen din egen fantasi!

Så nästa gång du skapar en WordPress-webbplats, leta efter ett sätt att förse användare med funktioner baserat på deras roller och förmågor. De kommer att uppskatta ansträngningen och du kommer att skapa en mer komplett webbplats.

Relaterade Inlägg

Back to top button