Moving a site to Laravel is only half the migration. Pro imports Disqus XML and WordPress WXR into the same polymorphic comments table Livewire and the API already use.
Requires core.allow_guests — imported authors become guest comments (guest_name / guest_email). Enable guests first.
Migrate (or recreate) articles so each commentable has a stable id you can pass as --id.
Export XML from Disqus admin. Map each thread to one commentable:
WordPress
Tools → Export (WXR) including comments:
--dry-run parses and counts without writing.
Options (both commands)
Idempotency
Each source row stores import_source (disqus or wordpress) + import_id. Re-running skips rows that already exist and still rebuilds the parent map so nesting survives a partial first run. Core 4.0 indexed these columns on comments.
Parent/child ids rematerialize in a second pass after all rows are inserted.
Original timestamps are preserved when the export includes them.
After import
Point the frontend at the commentable as usual:
Or React/Vue with the same alias. Deep links to #comment-{id} work once commentifyUrl() is implemented — old Disqus URLs will not magically redirect; keep a mapping if SEO depends on them. Last modified on September 12, 2026