WordPress'te Özel Kullanıcı Rolü Nasıl Oluşturulur

Yayınlanan: 2021-02-06

CMS ile bir web sitesi oluştururken esneklik her zaman memnuniyetle karşılanır. Neyse ki WordPress, son derece özel bir deneyim yaratmamıza izin veren temalar ve eklentilerle payından daha fazlasına sahip.

Ancak esnekliği, yükleyebileceğimiz ekstra şeylerin ötesine geçer. Aslında yazılımın tam çekirdeğine yerleştirilmiştir.

Özel kullanıcı rolleri oluşturma yeteneği parlak bir örnektir. Bugün, bunların ne olduğuna, neden kullanmak isteyeceğinize ve bunları oluşturmak için birkaç farklı tekniğe bir göz atacağız.

Kullanıcı İzinleri Üzerinde İnce Tahıl Kontrolü

Her WordPress kurulumunda, bir dizi varsayılan kullanıcı rolüne zaten erişiminiz vardır. Kullanıcıların web sitesinin arka ucunda (aka Dashboard) neleri yapıp neleri yapamayacaklarını belirlememize izin verirler.

Bu çok mantıklı. İçeriği yöneten herkesin yönetici ayrıcalıklarına sahip olması gerekmez. Bu nedenle, her kullanıcıya ihtiyaca göre bir rol atayabiliriz. Bu harika bir güvenlik önlemidir ve aksiliklere ve hatta birisinin aşırı yükleme eklentilerine karşı daha iyi garanti verebilir.

Bu aynı zamanda ön uçta da çalışır. Yalnızca oturum açmış kullanıcıların belirli içeriği görmesini istiyorsanız, bu işlevi temanıza ekleyebilir veya bir üyelik eklentisi aracılığıyla ekleyebilirsiniz.

Ancak varsayılan kullanıcı rolleri (Yönetici, Düzenleyici, Yazar, Katkıda Bulunan ve Abone) yararlı olsa da, bu ekstra kontrole ihtiyaç duyduğunuz zamanlar vardır. Bu nedenle WordPress, kendi özel rollerinizi oluşturma olanağı sağlar.

Özel Rol Ne Zaman Kullanılır?

Özel bir kullanıcı rolü, birkaç senaryoda kullanışlı olabilir. Karşılaşabileceğiniz daha yaygın olanlardan birkaçı:

Farklı İçerik Türlerini Yöneten Kullanıcılarınız Var

Varsayılan olarak, WordPress, halka açık iki temel içerik türüyle birlikte gelir: Gönderiler ve Sayfalar. Ancak özel gönderi türlerini kullanarak daha fazlasını eklemek kolaydır. Örneğin, basın bültenleri veya personel üyeleri gibi şeyler için gönderi türleri oluşturabilirsiniz. Ayrıca, çeşitli eklentiler kendi gönderi türlerini de yükleyebilir.

Büyük kuruluşlar, her birini yönetmek için belirli kişilerin akılda tutulduğu birkaç farklı içeriğe sahip olabilir. Bu durumda, tüm partiye erişim sağlayabileceğinden (veya kurulumunuza bağlı olarak tam tersi) varsayılan bir kullanıcı rolü ideal olmaz. Ancak özel bir rol, farklı kullanıcıların yalnızca onlara atadığınız gönderi türlerini görmelerine izin verir.

Kullanıcının Tek Bir Şey Yapması Gerekiyor

Bir kullanıcının web sitenizdeki özelliklere benzersiz bir erişim düzeyine ihtiyaç duyabileceği durumlar vardır. Örneğin, çevrimiçi bir kurs düzenlediğinizi varsayalım. Doğru çalıştığından ve içeriğin doğru olduğundan emin olmak için ön ve arka uçlarda kursun tamamına erişmesi gereken bir ekip üyeniz olabilir.

Bu ekip üyesinin yapması gereken tek şey kursun kendisine odaklanmaksa, bir yönetici hesabı aşırıya kaçmış olabilir. Özel bir kullanıcı rolüyle, gereksiz seçenekler arasında gezinmeden işlerini yapabilirler.

Mevcut Bir Rolü "Seviye Atlamanız" Gerekiyor

Bazen mevcut bir WordPress kullanıcı rolü mükemmele yakındır. Ama belki de bir kullanıcının erişmesi gereken ekstra bir şey vardır.

Yazar rolünü üstlenin. Varsayılan olarak gönderileri yayınlayabilirler, ancak sayfaları yayınlayamazlar. Normalde, kullanıcıyı Editör'e yükseltmeniz gerekir. Bu bazı durumlarda iyi olabilir. Ancak, bu belirli kullanıcının erişmesini istemediğiniz başka özellikler de olabilir. Burada özel bir rol oluşturmak en iyi seçenek olabilir.

Özel Kullanıcı Rolü Nasıl Oluşturulur

Özel bir WordPress kullanıcı rolü oluşturmak için iki farklı yöntem vardır. İlki, özel bir eklentiye veya temanızın functions.php dosyasına bazı kodlar eklemektir. İkincisi, roller oluşturmanıza ve düzenlemenize olanak tanıyan birçok mevcut eklentiden birini yüklemektir.

Kullandığınız yöntem gerçekten kişisel tercihinize bağlıdır. Kullanıcı yeteneklerini görsel olarak seçme ve seçme yeteneği istiyorsanız, bir eklenti en mantıklısıdır. Ancak kod konusunda rahatsanız ve/veya diğer yöneticilerin ayarlarla oynamasını istemiyorsanız, bir snippet eklemek sizin için olabilir.

Her iki durumda da, birkaç kod örneği ve bir dizi eklenti ile başlamanızı sağlayacağız.

İlk olarak, WordPress'in sunduğu çeşitli kullanıcı yetenekleri üzerinde çalışmanız önerilir. Ayrıca, özel gönderi türlerinin de özel yeteneklerine sahip olabileceğini unutmayın. Bu, yukarıda bahsettiğimiz ilk örnek senaryoda kullanışlı olabilir.

Yöntem 1: Kod Parçacığı Ekle

Bu örnekte, “Personel Üyesi” adında bir kullanıcı rolü oluşturacağız. Bu, Yazar rolünün tüm özelliklerini içerir, ancak ek olarak sayfaları düzenleme ve yayınlama yeteneği de vardır.

Role atadığımız her bir yetenek, aşağıdaki kod parçasında listelenmiştir ve “ doğru ” olarak ayarlanmıştır. Buradaki istisna, bu role sahip kullanıcıların yayınlanan sayfaları silmesini istemememizdir, bu yüzden bunu açıkça “ yanlış ” olarak ayarlıyoruz – sadece güvende olmak için.

Yine, bu kod temanızın functions.php dosyasına veya isteğe bağlı olarak özel bir eklentiye gider.

 /* Create Staff Member User Role */ add_role( 'staff_member', // System name of the role. __( 'Staff Member' ), // Display name of the role. array( 'read' => true, 'delete_posts' => true, 'delete_published_posts' => true, 'edit_posts' => true, 'publish_posts' => true, 'upload_files' => true, 'edit_pages' => true, 'edit_published_pages' => true, 'publish_pages' => true, 'delete_published_pages' => false, // This user will NOT be able to delete published pages. ) );

Bu kodu kaydettikten ve tarayıcıda web sitemizi yeniledikten sonra, bu role sahip yeni bir kullanıcı ekleyebiliriz.

WordPress Yeni Kullanıcı Ekle ekranı.

Personel rolündeki kullanıcımız giriş yaptığında hem sayfaları hem de gönderileri görebilir.

Giriş yapan kullanıcı, Gönderileri ve Sayfaları görür.

Başka bir alternatif, mevcut Yazar rolüne basitçe birkaç yetenek eklemek olabilir. Bunu add_cap() işleviyle yapabiliriz:

 /* Upgrade the Author Role */ function author_level_up() { // Retrieve the Author role. $role = get_role( 'author' ); // Let's add a set of new capabilities we want Authors to have. $role->add_cap( 'edit_pages' ); $role->add_cap( 'edit_published_pages' ); $role->add_cap( 'publish_pages' ); } add_action( 'admin_init', 'author_level_up');

Bu kod parçacıklarının ikisi de temelde aynı şeyi yapar. Ancak, zaten Yazar rolüne sahip kullanıcılarınızın olduğu ve onların ekstra yeteneklere sahip olmalarını istemediğiniz durumlarda yeni Personel Üyesi rolünü eklemek en iyisi olabilir.

Yöntem 2: Bir Eklenti Kullanın

Yukarıdaki işlevsellik, bir eklenti kullanılarak kolayca çoğaltılabilir. Bu tür kullanıcı rolü ve yetenek yönetimi için birkaç tane oluşturulmuştur. Bir GUI kullanmaları ve tüm sürece bir kolaylık katmanı eklemeleri açısından bir avantaj sunarlar.

Daha popüler seçeneklerden birkaçına göz atalım:

Kullanıcı Rolü Düzenleyicisi

Kullanıcı Rolü Düzenleyicisi ile, bir role yetenek eklemek veya kaldırmak, ayarlarda bir kutuyu işaretlemek veya işaretini kaldırmak kadar basittir. Ayrıca, kendi özel kullanıcı rollerinizi oluşturma ve gereken yetenekleri belirleme olanağına da sahipsiniz. Eklenti ayrıca WordPress'in çok siteli kurulumlarını da destekler.

WPFront Kullanıcı Rolü Düzenleyicisi

WPFront Kullanıcı Rolü Düzenleyicisi, kullanıcı rolleri eklemenize veya düzenlemenize izin veren benzer yetenekler sunar. Ancak, yöneticilerin kullanıcıları bir rolden diğerine geçirmesine ve bireysel kullanıcılara birden çok rol atamasına da olanak tanır.

Gelişmiş Erişim Yöneticisi

Daha geniş kapsamlı bir şey arıyorsanız Advanced Access Manager sizin için iyi bir seçim olabilir. Rol ve yetenek yönetiminin yanı sıra menüler ve widget'lar gibi ön uç ve arka uç özelliklerine erişimi kontrol etme yeteneği sunar.

Rollerinizi Bilin

Özel kullanıcı rolleri oluşturma yeteneği, WordPress'i sevmek için bir neden daha. Bu çok niş bir şey, ancak varsayılan rollerin ötesine geçen bir şeye ihtiyacınız olduğunda son derece yardımcı olabilir.

Bu nedenle, bir dahaki sefere kendinizi kullanıcı yeteneklerinin kontrolünün gerekli olduğu bir durumda bulduğunuzda, emrinizde bu güçlü araca sahip olduğunuzu bilin.