Ogranicz dostęp do panelu administracyjnego dla wybranych ról w WordPressie
Objaśnienie
Jeśli chcesz mieć pewność, że tylko niektóre osoby mogą uzyskać dostęp do obszaru administracyjnego WordPressa, ten kod jest dla Ciebie. Sprawdza, kto próbuje wejść do panelu administracyjnego i wpuszcza ich tylko wtedy, gdy mają odpowiednią rolę.
Oto jak to działa:
- Kod najpierw sprawdza, czy ktoś próbuje uzyskać dostęp do obszaru administracyjnego.
- Następnie sprawdza rolę użytkownika. W tym przypadku dozwolone są tylko role 'administrator' i 'edytor'.
- Jeśli użytkownik nie ma jednej z tych ról, zostaje odesłany z powrotem na stronę główną.
Dodatkowo, ukrywa pasek administracyjny dla użytkowników, którzy nie powinni go widzieć. Oznacza to, że jeśli nie jesteś 'administratorem' ani 'edytorem', nie zobaczysz paska administracyjnego na górze strony.
Aby zmienić, kto może uzyskać dostęp do obszaru administracyjnego lub zobaczyć pasek administracyjny, wystarczy zaktualizować role w kodzie. Na przykład, jeśli chcesz, aby 'autor' miał dostęp, dodaj 'autor' do listy dozwolonych ról.
Kod
Instrukcja
Lokalizacja pliku: Dodaj kod do pliku functions.php swojego motywu lub do pliku własnej wtyczki.
Wymagania wstępne: Brak
Kroki wdrożenia:
- Uzyskaj dostęp do panelu administracyjnego WordPress.
- Przejdź do Wygląd > Edytor motywu, jeśli dodajesz kod do
functions.php, lub przejdź do Wtyczki > Edytor, jeśli używasz własnej wtyczki. - Znajdź i otwórz plik
functions.phplub plik swojej wtyczki. - Skopiuj podany fragment kodu.
- Wklej kod na końcu pliku.
- Zapisz zmiany.
- Przetestuj wdrożenie, logując się z różnymi rolami użytkowników, aby upewnić się, że tylko role 'administrator' i 'redaktor' mogą uzyskać dostęp do panelu administracyjnego i zobaczyć pasek administracyjny.
Uwaga: Jeśli chcesz zezwolić na dodatkowe role, zmodyfikuj tablicę $allowed_roles w kodzie, aby uwzględnić te role.
Jeśli potrzebujesz dalszej pomocy lub zaawansowanej personalizacji, rozważ skontaktowanie się z wp-dude.com w celu uzyskania fachowej pomocy w zakresie WordPress.