PHPackages                             psycle-wordpress-plugins/psycle-pii-scrub - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. psycle-wordpress-plugins/psycle-pii-scrub

ActiveWordpress-muplugin

psycle-wordpress-plugins/psycle-pii-scrub
=========================================

WP\_CLI command to scrub PII data from a WordPress database. Calling 'wp pii-scrub' will automatically detect major plugins (BuddyPress, WooCommerce) and scrub/replace any PII (personal information) so that a database compromise doesn't cause issues. Additional custom meta data to check/scrub can be defined at runtime.

2.0.3(10y ago)1241PHPPHP &gt;=5.3.0

Since Oct 15Pushed 10y ago3 watchersCompare

[ Source](https://github.com/Psycle/psycle-pii-scrub)[ Packagist](https://packagist.org/packages/psycle-wordpress-plugins/psycle-pii-scrub)[ RSS](/packages/psycle-wordpress-plugins-psycle-pii-scrub/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependenciesVersions (8)Used By (0)

WP\_CLI - PII Data Scrub
========================

[](#wp_cli---pii-data-scrub)

- Contributors: psycle
- Tags: psycle
- Requires at least: 3.8
- Tested up to: 4.4.2
- Stable tag: 2.0.3

Description
-----------

[](#description)

WP\_CLI command to scrub PII data from a WordPress database. Calling "wp pii-scrub" will automatically detect major plugins (BuddyPress, WooCommerce) and scrub/replace any PII (personally identifiable information) so that a database compromise doesn't cause issues. Additional custom meta data to check/scrub can be defined at runtime.

Installation
------------

[](#installation)

Generally follow the normal procedure for WordPress plugins.

1. Upload the directory `psycle-pii-scrub` to the `/wp-content/plugins/` directory (or wherever that directory may be)
2. Activate the plugin through the 'Plugins' menu in WordPress.
3. Alternatively the directory can be placed within `/wp-content/mu-plugins/` and the psycle-pii-scrub.php file can be copied/moved up a directory.

Changelog
---------

[](#changelog)

### 2.0.3

[](#203)

- Add check for WP\_CLI within class, in case that file is directly loaded. Fixes sites white screening due to incorrect wrappers.
- Updated plugin URl.
- Updated lastest WordPress version tested.

### 2.0.2

[](#202)

- Check on use of --live and suppress concurrent use of --yes, ensure a manual confirmation is required.

### 2.0.1

[](#201)

- Update to composer.json to mark as install as MU plugin

### 2.0

[](#20)

- Removal of To Do/Ideas from README.md as they are now within the Gitlab project.
- Dry run ability added. Add --dryrun flag and the resultant changes won't be made, instead the database queries will be outputted.
- Detection of field type from field/column name on wp\_usermeta, wp\_postmeta and custom tables. Switches from using 'XXXXX ' to instead one of the following:
    - For Email addresses scrubs the first part (before the @) leaving the domain.
    - For URLs replaces with ''.
    - For telephone/mobile/fax numbers replaces with a randomised number starting '+44 (0) 555 '.
- Corrected missed fields from WooCommerce dataset scrub, 'shipping\_email' and 'shipping\_phone'.
- Scrubs for 'user\_url' in wp\_users and 'comment\_author\_url' in wp\_comments only occur if those fields are not already blank.
- Checks within customtablefields for existence of table and column names, excludes those not known.
- Add explanation text for use of --customtablefields that it needs enclosing with single quotes '.

### 1.1

[](#11)

- It's possible the command might be run on a site that doesn't follow the Psycle standard layout for wp-config.php. Detect this and exit.

### 1.0

[](#10)

- Initial version of plugin.

###  Health Score

29

—

LowBetter than 60% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity13

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity63

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~34 days

Recently: every ~43 days

Total

6

Last Release

3686d ago

Major Versions

1.1 → 2.02015-10-16

### Community

Maintainers

![](https://www.gravatar.com/avatar/8c46fb3d26f5d9cc24b47aba46eab6801a7dc50271e2894f115af56f96ddee43?d=identicon)[jamesrobinson-psycle](/maintainers/jamesrobinson-psycle)

---

Top Contributors

[![jamesrobinson-psycle](https://avatars.githubusercontent.com/u/13469492?v=4)](https://github.com/jamesrobinson-psycle "jamesrobinson-psycle (3 commits)")

### Embed Badge

![Health badge](/badges/psycle-wordpress-plugins-psycle-pii-scrub/health.svg)

```
[![Health](https://phpackages.com/badges/psycle-wordpress-plugins-psycle-pii-scrub/health.svg)](https://phpackages.com/packages/psycle-wordpress-plugins-psycle-pii-scrub)
```

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
