=== Pro Services Post Migrator ===
Contributors: mdburnette
Donate link: https://mburnette.com
Tags: migration, proserv, posts, media
Requires at least: 6.2
Tested up to: 7.0
Requires PHP: 8.0
Stable tag: 1.0.2
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Move WordPress posts between sites faster with reliable ZIP or direct REST migrations, smart author mapping, and built-in media + taxonomy support.

== Description ==

Pro Services Post Migrator helps teams move post content between WordPress sites without the usual migration friction.

Choose the workflow that fits your project:

* Export/Import package workflow for controlled handoffs between environments.
* Direct site-to-site workflow over WordPress REST API using a secure connection key.

Built for reliability in real migrations:

* Batch processing for better performance on large content sets.
* Re-runnable imports with mapping tables to skip already migrated posts and media.
* Referenced media migration with URL and ID rewrites in post content and meta.
* Taxonomy migration for categories, tags, and custom taxonomies (with omit controls).
* Missing author handling with saved assignment/create preferences.
* Detailed migration logs for troubleshooting and reporting.

Scope notes:

* Migrates the built-in `post` post type.
* Supports post statuses: `publish`, `future`, `draft`, `pending`, `private`, `trash`.
* Designed for single-site WordPress installs (multisite is not supported).

== Installation ==

1. Upload the plugin folder to `/wp-content/plugins/` or install it through the WordPress Plugins screen.
2. Activate the plugin through the "Plugins" screen in WordPress.
3. Open "Pro Services Post Migrator" in wp-admin.
4. On the source site, generate a connection key or create an export package.
5. On the destination site, choose your migration method and run the import.

== Frequently Asked Questions ==

= What content does this plugin migrate? =

It migrates WordPress posts (`post`), including supported statuses, post meta, assigned taxonomies, featured images, and referenced media.

= Can I migrate custom post types? =

Not in this version. The plugin is intentionally focused on `post` content.

= Does this work with multisite? =

No. This plugin supports single-site WordPress installs only.

= Is direct migration secure? =

Direct migration uses a source-generated connection key sent in request headers. You should run migrations over HTTPS.

== Changelog ==

= 1.0.2 =

* Renamed the plugin slug, text domain, filenames, and internal prefixes to `pro-services-post-migrator` / `pspm_`.
* Removed the invalid `Plugin URI` header.
* Updated the contributor list to match the WordPress.org plugin owner username.
* Added compatibility migration for legacy `spm_*` options, tables, and saved local storage values.

= 1.0.1 =

* Added WordPress.org repository readme metadata and improved marketing description.
* Added plugin header fields for license, URI, and text domain metadata.
* Fixed an import package bug that referenced undefined variables during option updates.
* Hardened package path validation and direct source URL validation.
* Improved sanitization/unslashing for export download request parameters.

= 1.0.0 =

* Initial release.

== Upgrade Notice ==

= 1.0.2 =

Recommended update for plugin-directory naming compliance and legacy-data migration support.
