Add_role () veritabanını değiştirir ve rol zaten varsa başarısız olduğunu keşfetmek için sürpriz oldu. Burada iki sonuç vardır, birincisi diğerinden daha ciddidir: 1) geliştirme aşamasındaysanız ve add_role kodunuzu güncellerseniz, doğru olduktan sonra önce remove_role () 2) 'yi kaldırmalısınız, bu kodu asla çalıştırmamalısınız tekrar.
Yani genellikle bir wp_loaded eylem kanca içine benim add_role () koyuyorum. Ve geliştirildiğim için, add_role'ımdan önce bir remove_role () ekledim.
Ancak bu, blogun bir sayfasına her erişildiğinde açık bir şekilde çalışıyor. Tamam, bunu yalnızca yönetici işlemine sokabilirim veya belki de bu rolün bir kez oluşturulabileceği Kullanıcılar veya Araçlar altında bir eklenti sayfası oluşturabilirim. Sanırım orada daha basit ve daha zarif bir çözüm var.
Ben run_once bir tür eylem olduğunu düşünmüyorum?
Yoksa rol eklemek ve sonra add_cap () bir sürü kez kullanmak için en iyi yöntem mi? Ve o zaman bile add_cap db erişiyor hayal.
Sadece gereksiz db erişimini azaltmak için en iyi yolu açısından düşünüyorum. En iyi uygulamalarınız neler?
remove_role()
önceadd_role()
bana fonksiyon eklemek yardımcı oldu.