Skip to content

Filter by post types and post status in post table #125

@skorasaurus

Description

@skorasaurus

Feature Request

Describe your use case and the problem you are facing

I currently use search-replace for batch editing content (when the name of an event that we do has changed for example...)

There's been a couple instances where I would have preferred search-replace to only
edit the content that is currently published (post_status=published) not in past revisions; or only to only change in specified post_types (we updated the url structure for only one kind of custom post_type).

Describe the solution you'd like

I was wondering if it's possible to add an additional parameter to the search-replace command so that when search and replaces are made; the user can specify the
only affect the current revision of content in the wordpress database.
(Thinking aloud this could be done by filtering the post_status or post_type columns for specified values.

(I'd add an extra parameter like post_status=publish which would not update currently published content) using a parameter like --skip-post-status.
Example usage:
wp search-replace 'before' 'after' --skip-post-status=publish --recurse-objects --skip-columns=guid --skip-tables=wp_users

or to only edit certain post types like
--include-post-type-values=my_custom_post_type
Example usage:
wp search-replace 'before' 'after' --include-post-type-values=my_custom_post_type --recurse-objects --skip-columns=guid --skip-tables=wp_users

Filtering out the post_status and post_type columns for their values can be done using a SQL statement but adding this to wp-cli hopefully would be worth doing.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions