feat(site-exporter): add network export feature (GH#1149)#1155
feat(site-exporter): add network export feature (GH#1149)#1155superdav42 merged 1 commit intomainfrom
Conversation
Add the ability to export an entire multisite network into a single ZIP file. Files: - inc/site-exporter/class-network-exporter.php: New class that orchestrates network-level export including: network SQL (blogs, site, sitemeta, signups), global users, per-site bundles via mu-migration, shared wp-content (plugins, themes, mu-plugins, uploads), and a network.json manifest. - inc/functions/exporter.php: Add wu_exporter_export_network() and wu_exporter_add_pending_network() helper functions. - inc/site-exporter/class-site-exporter.php: Wire wu_export_network action, register export_network form, add network_export bulk action, and implement modal UI for network export configuration. - tests/WP_Ultimo/Site_Exporter_Test.php: Add tests for network export action/hook registration. - tests/WP_Ultimo/Site_Exporter/Network_Exporter_Test.php: New test file with unit tests for the Network_Exporter class.
|
Warning Rate limit exceeded
To continue reviewing without waiting, purchase usage credits in the billing tab. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (5)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
MERGE_SUMMARYChanges
Quality Gates
Verificationvendor/bin/phpunit --filter "Site_Exporter_Test|Network_Exporter_Test"
# OK (19 tests, 44 assertions)
vendor/bin/phpcs --standard=.phpcs.xml.dist \
inc/site-exporter/class-network-exporter.php \
inc/functions/exporter.php \
inc/site-exporter/class-site-exporter.php \
tests/WP_Ultimo/Site_Exporter_Test.php \
tests/WP_Ultimo/Site_Exporter/Network_Exporter_Test.php
# 0 ERRORSRiskLow — New class with full test coverage; no existing behavior changed; only additions to site exporter module. |
🔨 Build Complete - Ready for Testing!📦 Download Build Artifact (Recommended)Download the zip build, upload to WordPress and test:
🌐 Test in WordPress Playground (Very Experimental)Click the link below to instantly test this PR in your browser - no installation needed! Login credentials: |
SummaryAdd the ability to export an entire multisite network into a single ZIP file for full network migration. What
Tests
Quality
Merged via PR #1155 to main. aidevops.sh v3.14.89 spent 36s on this as a headless bash routine. |
SummaryAdd the ability to export an entire multisite network into a single ZIP file for full network migration. What
Tests
Quality
Merged via PR #1155 to main. aidevops.sh v3.14.89 spent 32s on this as a headless bash routine. |
|
Performance Test Results Performance test results for 5fcb0f2 are in 🛎️! Note: the numbers in parentheses show the difference to the previous (baseline) test run. Differences below 2% or 0.5 in absolute values are not shown. URL:
|
Closing NotesPR #1155 (feat: network export GH#1149) has been merged. Changes delivered:
CI: All checks passed (Code Quality, PHP 8.2–8.5, E2E, WP Performance, PR Build). |
Summary
Add the ability to export an entire multisite network into a single ZIP file for full network migration.
What
inc/site-exporter/class-network-exporter.php: NewNetwork_Exporterclass that orchestrates:network.jsonmanifest with export metadatainc/functions/exporter.php: New helper functions:wu_exporter_export_network()- sync/async network export entry pointwu_exporter_add_pending_network()- track pending async exportsinc/site-exporter/class-site-exporter.php: Integrations:wu_export_networkasync action handlerexport_networkform with modal UI (site selection, main site, options)Tests
tests/WP_Ultimo/Site_Exporter_Test.php: 3 new tests for action/form/bulk registrationtests/WP_Ultimo/Site_Exporter/Network_Exporter_Test.php: 7 tests for singleton, validation, sitemeta whitelist, and manifest schemaQuality
Resolves #1149