diff --git a/source/wp-cli-overrides.sh b/source/wp-cli-overrides.sh index 39f2476..757eeca 100644 --- a/source/wp-cli-overrides.sh +++ b/source/wp-cli-overrides.sh @@ -14,5 +14,5 @@ wp_skip_all () { # # It expects $site_url to be set. This is useful in a for loop of every site. wp_on_site () { - wp --skip-themes --path="${config[wp_path]}" --url="${site_url}" "$@" + wp --skip-themes --skip-plugins --path="${config[wp_path]}" --url="${site_url}" "$@" } diff --git a/delete-user.sh b/user-delete.sh similarity index 100% rename from delete-user.sh rename to user-delete.sh diff --git a/user-list.sh b/user-list.sh new file mode 100755 index 0000000..5b3c62e --- /dev/null +++ b/user-list.sh @@ -0,0 +1,21 @@ +#!/bin/env bash + +# Lists every user and their roles on every site. + +source 'source/includes.sh'; + +fields_to_display='user_login,user_email,roles'; + +log_file='user-list.txt'; + +echo '#########################################################' | tee "$log_file"; +echo 'Users by WordPress site' | tee -a "$log_file"; +echo '#########################################################' | tee -a "$log_file"; + +for site_url in $(wp_skip_all site list --field="url" --archived=0 --deleted=0 --spam=0); do + + echo '-------------------------------------------------' | tee -a "$log_file"; + echo "Site ${site_url}" | tee -a "$log_file"; + wp_on_site user list --fields="${fields_to_display}" | tee -a "$log_file"; + +done;