Якщо, як я, ви віддаєте перевагу підходу Python (мабуть, рідко тут, але все ж), це прозорий та ефективний спосіб вирішити цю проблему:
import os
# Build up a variable containing the usernames
# This list was built using drush sql-cli, then
# SELECT name FROM users
# where $your-where-condition
# order by uid asc
# INTO
# OUTFILE '/tmp/users.csv'
# FIELDS TERMINATED BY ','
# ENCLOSED BY '"'
# lines terminated by ', ' ;
users = [result from SQL goes here]
for user in users:
print("Deleting spam user: %s..." % user),
os.system('drush --yes -r $your-path-to-drupal -l $your-site-url user-cancel --delete-content %s > /dev/null' % user)
print 'Done'
Основні дії:
- Увійдіть у свій БД за допомогою
drush sql-cli -r $your-path-to-drupal -l $your-site-url
- Запустіть SQL вище з власним, де умова, і вставте результати в змінну користувачів.
- Оновіть свій шлях друпалу та назву сайту в команді drush
- Запустіть сценарій за допомогою
python delete-users.py
Я впевнений, що є кращий спосіб зробити це, але це моє зламане рішення, яке працює добре.
select all
кнопку, що вибирає всі елементи на всіх сторінках - клацніть по ньому та вбийте все!