我试图找到类似的问题。我还没有得到任何现有的。我想防止从后端用户表中删除管理员。只有两个管理员可以删除所有用户,但其他管理员不能删除所有其他管理员。我试过这个代码。但是如果我使用直接url参数,它允许我删除用户。
function kv_admin_deactivate_link($actions, $user_object) {
if($user_object->ID == 1 || $user_object->ID == 2)
unset($actions[\'delete\']);
return $actions;
}
add_filter(\'user_row_actions\', \'kv_admin_deactivate_link\', 10, 2);
这实际上有助于从users表中隐藏delete链接。但如果我使用直接获取链接,它允许我删除。
因此,是否有任何功能或特性可以阻止删除。
最合适的回答,由SO网友:jjarolim 整理而成
一个快速(且不干净)的解决方案是防止在发生最终删除的地方进行删除(函数delete\\u user)。您可以实现一个小插件或将代码粘贴到函数中。php:
<?php
/*
Plugin Name: Please don\'t delete me!
Description: Prevent accidental user deletion of my account
*/
define(\'PDDM_USER_ID\', 1); // User ID of your Account
add_action(\'delete_user\', function($id) {
if ($id == PDDM_USER_ID) {
die(\'please don\\\'t delete me!\');
}
});
这只是在删除用户get之前停止脚本执行。
不花哨也不漂亮。。。但它是有效的;-)
来自萨尔茨堡的br!