This WP CLI posts generator, unlike the core generator in WP CLI, supports the following:
- Terms
- Term Counts
- Taxonomies
- Post Types
- Post Counts
- Post Author
- Post Status
- Featured Images
- Image Download sizes
- Multi-site ( specify site id if necessary )
NEW - using wp jw-random cleanup <options>
this script now cleans up after itself.
Thanks to @fzaninotto for the Faker library.
Currently this CLI command does not support meta-data, mainly due to the amount of commands you would need to run for large sites. Still a great script if you need to generate some placeholder posts fast, especially with featured images and terms.
Installing the random post generator is SUPER easy, for the latest and greatest, do the following:
wp package install jaywood/jw-wpcli-random-posts:dev-master
If you'd like a specific version, say 2.0, it's this simple:
wp package install jaywood/jw-wpcli-random-posts:2.0
Possibly the simplest way to use the generator.
wp jw-random generate 50
First find the author you want to attach the Post to
wp user list
Now you know the author ID just use the --author
flag like so:
wp jw-random generate 10 --author=13 --featured-image
The author field also supports slug ( login ), and email.
( --term-count
tells the script to also add 15 terms to each taxonomy )
wp jw-random generate 10 --featured-image --taxonomies=category,post_tag --term-count=15
( --force-delete
permanently deletes posts and media instead of just trashing them )
wp jw-random cleanup --tax=post_tag,category --force-delete
In the interest of keeping this readme slim, all options have been moved to the Wiki.
- A bit of house cleaning.
- Moved generate and cleanup commands to separate files.
- Renamed a lot of CLI arguments to make more sense.
- Now using the Faker library instead of relying on API calls.
- Author now supports email, slug ( login ), or ID.
- Removed the media flag, no sense in having it if post type is empty it defaults to all.
- Removed the
--site
option, use--url
instead. - Made use of
md5_file()
to prevent image duplication within the media library.
- Removed some CLI default values causing the script to complain when it shouldn't have.
- Cleaned up get_post_content() a bit.
- Ignore some PHPCS complaints about @unlink
- Small message updates.
- Some PHPCS fixes ( alignment, assignments, etc.. )
- Changed ipsum generator to loripsum.net, fixes #11
- Update API url for random word getter ( setgetgo )
- Remove dependancy on exif PHP library.
- Fixed - #6 - Error message duplication
- Fixed - #10 - Removed a lot of log messages, added progress bars in their place.
- Changed -
posts
command togenerate
- makes more sense. - Remove the flag
--n
for specfying post count, make post count required positional argument instead. - Significant readme updates.
- Fixed possible bug with
post_type_exists
checks on multisite installs. - Added cleanup method to allow users to undo/remove posts, terms, and media that was added via this generator. This is not backwards compatible, with earlier versions, sorry guys!
- Added
post_status
flag for generating posts, you can now set your own status.
Note: status does not validate, so you can technically set this to anything, its up to you as a developer to expose custom statuses in the admin. - Added taxonomy validation: Script will now validate if a taxonomy is even registered, and allow you to continue if you want.
Initial Release