網頁

2012年8月18日 星期六

Wordpress開發筆記 - 設定後台某個選單子選項的權限

最近出了個bug,是權限的問題,對wordpress不熟,找半天,才知道在設定後台menu時,其中的capability,是有差別的,而且現在的版本不再以1~10來分配,不過用到的那個plugin還是以數字來處理,看到裡頭設定為manager_options,想給這個管理者這個權限,又發現放進去後,就多了很多的選單,再找找看來這個使用者是"editor"這角色,只能針對那個功能給。

基本上walk around的解法是,在加上那個功能時,直接設定level,如:

add_submenu_page(basename('showdata.php'), '新功能', '新功能', 7,basename('showdata.php') ,'show_page');


如上述紅色數字,editor的level是7,自然可以使用這個功能。

不過後來的解決是,就挑個只有"Editor"能用的權限,設定進去就行了,例如'edit_private_posts'這個權限,就可以寫成
add_submenu_page(basename('showdata.php'), '新功能''新功能''edit_private_posts',basename('showdata.php') ,'show_page');

這樣不用動到任何的東西。似乎有點取巧,哈哈

參考網址:
http://codex.wordpress.org/Roles_and_Capabilities#manage_options
http://www.garyc40.com/2010/04/ultimate-guide-to-roles-and-capabilities/
http://justintadlock.com/archives/2009/08/30/users-roles-and-capabilities-in-wordpress

沒有留言:

張貼留言