爲了解決第三方插件的愚蠢問題,我不得不爲用戶級用戶提供一些我不希望他們實際擁有的編輯功能。 (這並不能讓他們訪問編輯鏈接,但如果他們聰明,他們可以直接訪問編輯URL。)由於我的網站只有訂閱用戶和管理用戶,我可以通過簡單地修改wp-admin中的功能檢查來解決問題/post.php,要求用戶不具有附加功能,比如:如何永久修改WordPress的'wp-admin/post.php?
if (! current_user_can('edit_post', $post_id))
wp_die(__('Sorry, you are not allowed to edit this item.'));
變爲:
if (! current_user_can('edit_post', $post_id) OR ! current_user_can('edit_pages'))
wp_die(__('Sorry, you are not allowed to edit this item.'));
這工作完全,但我知道它會被覆蓋,並且需要每次更新Wordpress時都要重新做。有沒有辦法通過過濾器或類似方式以更持久的方式應用此修復程序?