Skip to main content

wp site list

Overview

View all subsites within your Multisite network. Filter by status (public, archived, spam, deleted) and export or pipe the list to other commands.

Syntax

wp site list [OPTIONS]

Options

FlagDescription
--fields=FIELDSFields to display (e.g., blog_id, url, registered)
--format=FORMATtable, csv, json, ids, count
--site__in=IDSList specific sites by ID
--deletedInclude deleted sites
--archivedInclude archived sites

Basic Usage

List all active sites

wp site list

Output:

+---------+----------------------------+---------------------+---------------------+
| blog_id | url | last_updated | registered |
+---------+----------------------------+---------------------+---------------------+
| 1 | http://example.com/ | 2026-03-12 10:00:00| 2026-01-01 08:00:00|
| 2 | http://example.com/blog/ | 2026-03-13 14:00:00| 2026-01-15 09:00:00|
+---------+----------------------------+---------------------+---------------------+

Real-World Scenarios

Scenario 1: Bulk updating all sites

for id in $(wp site list --format=ids); do
wp plugin activate custom-branding --url=$(wp site list --blog_id=$id --fields=url --format=table | grep http | awk '{print $2}')
done

Note: While wp plugin activate --network works for network-wide activation, looping wp site list is useful for per-site configurations.

Scenario 2: Auditing abandoned sites

wp site list --fields=blog_id,url,last_updated --format=csv > multisite-audit.csv

Quick Reference

wp site list --format=count       # How many sites?
wp site list --format=ids # Just the IDs
wp site list --archived # Find archived sites

Next Steps