Skip to main content

wp plugin status

Overview

Get a detailed status snapshot of a specific plugin: version, activation state, update availability, description, and file location. Essential for confirming the state of a plugin before and after operations.

What It Does

wp plugin status prints detailed information about a single plugin. Unlike wp plugin list which gives a table view of all plugins, this command goes deeper — similar to clicking "View plugin details" in wp-admin.

Syntax

wp plugin status [<plugin>] [--format=<format>]

Arguments & Options

Argument / FlagDescription
PLUGINPlugin slug to check (omit to show status of all plugins)
--format=FORMATOutput: table, json, csv, yaml

Basic Usage

Status of a single plugin

wp plugin status woocommerce

Output:

Plugin woocommerce details:
Name: WooCommerce
Status: Active
Version: 9.0.1
Author: Automattic
Description: An ecommerce toolkit that helps you sell anything.
Update available: 9.1.0

JSON output (for scripting)

wp plugin status woocommerce --format=json

Status of all plugins (summary table)

wp plugin status

Output Fields

FieldDescription
NameDisplay name of the plugin
StatusActive, Inactive, Network Active, Must Use
VersionCurrently installed version
AuthorPlugin author
DescriptionPlugin description from the plugin header
Update availableNew version number if one exists
FilePath to the main plugin file

Real-World Scenarios

Scenario 1: Verify plugin state after activation in a script

wp plugin activate woocommerce
STATUS=$(wp plugin status woocommerce --format=json | python3 -c "import sys,json; print(json.load(sys.stdin)['status'])")
echo "WooCommerce status: ${STATUS}"
if [ "${STATUS}" = "Active" ]; then
echo "✅ Activation confirmed"
else
echo "❌ Activation may have failed"
fi

Scenario 2: Check for updates before deciding to run wp plugin update

wp plugin status woocommerce
# If "Update available" shows a version, update is safe to run
wp plugin update woocommerce

Scenario 3: Audit plugin version in CI/CD

# Fail pipeline if WooCommerce version is below minimum
MIN_VERSION="9.0.0"
INSTALLED=$(wp plugin status woocommerce --format=json | python3 -c "import sys,json; print(json.load(sys.stdin)['version'])")

if [ "$(printf '%s\n' "$MIN_VERSION" "$INSTALLED" | sort -V | head -n1)" != "$MIN_VERSION" ]; then
echo "ERROR: WooCommerce ${INSTALLED} is below minimum ${MIN_VERSION}"
exit 1
fi
echo "WooCommerce version OK: ${INSTALLED}"

Scenario 4: Quick health check in a monitoring script

PLUGINS=("woocommerce" "woocommerce-payments" "yoast-seo")
for plugin in "${PLUGINS[@]}"; do
wp plugin status "${plugin}" --format=json 2>/dev/null | \
python3 -c "import sys,json; d=json.load(sys.stdin); print(f\"${plugin}: {d['status']} v{d['version']}\")" \
2>/dev/null || echo "${plugin}: NOT FOUND"
done

Best Practices

  1. Combine with --format=json in scripts — easier to parse than table output.
  2. Check status after every activate/deactivate operation to confirm the change took effect.
  3. Use for version auditing in QA pipelines — verify specific plugin versions are present before running tests.

Troubleshooting

ProblemCauseFix
Error: The plugin could not be foundWrong slug or not installedVerify with wp plugin list --field=name
Status: Inactive unexpectedlyActivation failed silentlyCheck PHP error log; re-run wp plugin activate
No update version shown when expectedAPI rate limitedRetry; or check plugin page manually on WordPress.org

Quick Reference

wp plugin status woocommerce                    # Single plugin detail
wp plugin status woocommerce --format=json # JSON for scripting
wp plugin status # All plugins summary

Next Steps