Как предотвратить удаление учетных записей пользователей в WordPress Back-end?

Я попытался найти аналогичный вопрос. И у меня нет ни одного существующего. Я хочу предотвратить удаление администраторов из таблицы конечных пользователей. только два администратора могут удалить всех пользователей, но другие администраторы не могут удалить всех других администраторов. Я пробовал этот код. Но если я перейду с параметрами прямого 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. но если я перейду с прямой ссылкой GET, это позволит мне удалить.

Таким образом, есть функция или функция, которая предотвратит удаление.

Solutions Collecting From Web of "Как предотвратить удаление учетных записей пользователей в WordPress Back-end?"

Быстрое (и грязное) решение было бы предотвратить окончательное удаление там, где это происходит (функция delete_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!'); } }); 

Это просто прекращает выполнение скрипта непосредственно перед удалением вашего пользователя.

Не причудливый и симпатичный … но он работает 😉

br из Зальцбурга!