For commands that accept one or more IDs as positional parameters, I would like to investigate adding ranges and partial ranges as valid IDs.
A range would take the following form: <range start>-<range end>. This would mean that all existing IDs that fall into the range that starts at <range start> and ends at <range end> would be included.
Example: 15-35 would mean all IDs starting from 15 and going up to and including 35 would be processed. Only valid existing IDs within that range would be processed, so that no warnings are being thrown for missing IDs in-between.
A partial range would take one of these forms: <range start>- or -<range-end>. This would mean that either all existing IDs starting from <range start> without any upper bound or all existing IDs from 1 onwards up to and including <range end> would be included.
Ranges and individual IDs can be combined in any way, so you can use something like the following: 3 7 12-24 19 34-.
Commands that could profit from this range notation:
comment approve
comment delete
comment recount
comment spam
comment trash
comment unapprove
comment unspam
comment untrash
comment update
embed cache clear (*)
embed cache trigger (*)
media regenerate
post delete
post meta delete (*)
post meta update (*)
post update
site activate
site archive
site deactivate
site delete (*)
site mature
site private
site public
site spam
site unarchive
site unmature
site unspam
term delete
term meta delete (*)
term meta update (*)
term update (*)
user add-cap (*)
user add-role (*)
user delete
user meta delete (*)
user meta update (*)
user remove-cap (*)
user remove-role (*)
user reset-password
user set-role (*)
user spam
user unspam
user update
widget delete
widget move (*)
widget update (*)
(*) => not variadic yet
For commands that accept one or more IDs as positional parameters, I would like to investigate adding ranges and partial ranges as valid IDs.
A range would take the following form:
<range start>-<range end>. This would mean that all existing IDs that fall into the range that starts at<range start>and ends at<range end>would be included.Example:
15-35would mean all IDs starting from 15 and going up to and including 35 would be processed. Only valid existing IDs within that range would be processed, so that no warnings are being thrown for missing IDs in-between.A partial range would take one of these forms:
<range start>-or-<range-end>. This would mean that either all existing IDs starting from<range start>without any upper bound or all existing IDs from1onwards up to and including<range end>would be included.Ranges and individual IDs can be combined in any way, so you can use something like the following:
3 7 12-24 19 34-.Commands that could profit from this range notation:
comment approvecomment deletecomment recountcomment spamcomment trashcomment unapprovecomment unspamcomment untrashcomment updateembed cache clear(*)embed cache trigger(*)media regeneratepost deletepost meta delete(*)post meta update(*)post updatesite activatesite archivesite deactivatesite delete(*)site maturesite privatesite publicsite spamsite unarchivesite unmaturesite unspamterm deleteterm meta delete(*)term meta update(*)term update(*)user add-cap(*)user add-role(*)user deleteuser meta delete(*)user meta update(*)user remove-cap(*)user remove-role(*)user reset-passworduser set-role(*)user spamuser unspamuser updatewidget deletewidget move(*)widget update(*)(*) => not variadic yet