Как в WordPress массово удалять пользователей с определенной ролью?

Существует необходимость удалить пользователей с определенной ролью на сайте. Проще всего это сделать вручную, но если таких пользователей порядка десятка или даже сотни? В этом случае можно воспользоваться более эффективными инструментами.

Одним из наиболее распространенных способов является использование плагинов. Существует множество плагинов, которые позволяют управлять пользователями более эффективно. Например, вы можете рассмотреть плагины такие как User Role Editor или WP Bulk Delete. Эти плагины предоставляют интерфейс для массового удаления пользователей по роли, что значительно ускоряет процесс.

Также можно использовать SQL-запросы непосредственно в базе данных. Это потребует определенных знаний о структуре базы данных WordPress, но в случае большого количества пользователей это может быть очень быстрым решением. Пример запроса для удаления всех пользователей с ролью «подписчик»:

DELETE FROM wp_users WHERE ID IN (SELECT user_id FROM wp_usermeta WHERE meta_key = 'wp_capabilities' AND meta_value LIKE '%subscriber%');

Перед выполнением подобных операций настоятельно рекомендуется сделать резервную копию базы данных, чтобы в случае ошибки можно было восстановить информацию. Кроме того, будьте осторожны при выполнении запросов, чтобы не удалить лишних пользователей.

Еще один вариант — использовать WP-CLI (интерфейс командной строки для WordPress). С помощью команды wp user delete можно массово удалить пользователей по их ролям. Например:

wp user delete $(wp user list --role=subscriber --field=ID)

Использование этих методов поможет вам сэкономить время и упростить процесс удаления пользователей с определенной ролью на вашем сайте WordPress.

Способ 1. Ручное удаление

Когда речь идет о незначительном количестве пользователей, ручное удаление будет более быстрым и простым решением. Для этого необходимо перейти в разделе Пользователи в админской панели.

На этой странице представлен список всех зарегистрированных пользователей, независимо от их ролей. Над перечнем размещены ссылки на роли, где в числе указано количество пользователей в каждой категории. Нажав на одну из ссылок, можно отобразить только пользователей с выбранной ролью. Чтобы удалить их, следует поставить галочку в начале таблицы рядом с названием столбца Имя пользователя, тем самым выбрав всех пользователей в списке. Далее, в нижней части таблицы, необходимо в выпадающем меню Действия выбрать опцию Удалить и кликнуть кнопку Применить.

Удаление пользователей

Важно помнить, что по умолчанию на странице отображается только 20 пользователей. Если нужно удалить больше, нужно нажать кнопку Настройки экрана, в поле Количество элементов на странице указать необходимое количество и кликнуть Применить.

Выбор количества элементов на странице

После начала процесса удаления система может предложить решить, что делать с материалами, принадлежащими удаляемым пользователям (если таковые существуют).

Выбор действия с материалами удаляемого пользователя

У вас будет два выбора: удалить материалы или передать их другому пользователю. После того как вы сделаете свой выбор, нужно нажать на кнопку Подтвердить удаление. После успешного завершения удаления появится уведомление об этом.

Обратите внимание, что перед удалением пользователей стоит сделать резервную копию базы данных, чтобы избежать потери важных данных. Если в вашем сайте предусмотрены определенные категории пользователей с особыми правами, удостоверьтесь, что вы не удаляете администраторов или пользователей с важными функциями. Также, если в вашем сайте есть система подписок или платежей, удаление пользователей может повлиять на финансовые аспекты.

Для упрощения процесса можете использовать поиск по имени пользователя или электронному адресу, чтобы быстро находить нужных пользователей. Это особенно полезно, если их количество велико. Кроме того, не забудьте проверить наличие плагинов, которые могут упростить массовое удаление пользователей или автоматизировать этот процесс в будущем.

Способ 2. Использование плагина Bulk Delete

С помощью бесплатного плагина Bulk Delete можно удалить не только зарегистрированных пользователей, но и тех, кто долгое время не входил на сайт.

После установки и активации плагина вам нужно перейти в админ-панели в раздел Bulk WP -> Bulk Delete Users. В этом разделе нас интересует блок By User Role.

Страница настроек плагина Bulk Delete

Чтобы удалить пользователей с определенной ролью, необходимо в блоке Select the user roles from which you want to delete users выбрать нужные роли и нажать на кнопку Удалить. Обратите внимание, что при удалении пользователя все связанные с ним материалы также будут удалены. Если отметить опцию Only if user doesn’t have any post. Only posts from ‘post’ post type would be considered, то удалятся только те пользователи, у которых нет ни одной публикации.

Кроме того, плагин предоставляет возможность удаления пользователей по различным критериям: вы можете удалить пользователей, которые зарегистрировались более 30 дней назад, или тех, кто не заходил на сайт в течение определенного времени. Эти функции помогут вам поддерживать порядок в вашей базе пользователей и удалять неактивные записи.

Важно помнить, что перед массовым удалением пользователей рекомендуется сделать резервную копию сайта и базы данных, чтобы избежать случайной потери важной информации. Это позволит вам восстановить данные в случае необходимости.

Способ 4. Удаление пользователей с помощью SQL-запросов

Для устранения аккаунтов с заданной ролью применяется SQL-запрос. Этот метод подходит для тех, кто имеет доступ к базе данных. Рекомендуется делать резервную копию перед выполнением любых операций.

Используйте следующий запрос для удаления всех записей с конкретной ролью. Предположим, вы хотите избавиться от всех редакторов. Запрос будет выглядеть так:

DELETE FROM wp_users WHERE ID IN (SELECT user_id FROM wp_usermeta WHERE meta_key = 'wp_capabilities' AND meta_value LIKE '%editor%');

Обратите внимание, что при выполнении удаления через SQL вы не получите подтверждения обнаружения проблем или предупреждений. Эта операция происходит мгновенно, поэтому важно предварительно удостовериться, что условия написанного запроса соответствуют вашим требованиям.

Важно помнить, что первым делом стоит делать резервную копию базы данных, чтобы избежать нежелательных последствий.

При необходимости можно адаптировать запрос под другие роли, меняя значение ‘editor’ на нужное. Такой подход позволяет сосредоточиться на задачах и избежать забытых аккаунтов, которые могут создавать лишние проблемы в дальнейшем. Для получения актуальной информации о пользователях используйте команду SELECT перед выполнением DELETE.

Оставьте комментарий