Weebly to WordPress: moving .html pages and blog posts safely
Weebly sites are easy to recognize by their URLs: standard pages end in .html (/about.html), and WordPress does not use that extension, so almost every page on a Weebly site changes address when you move. Plan the migration around that fact. Copy the page content into WordPress, pull recent blog posts in through the RSS feed at /1/feed, and redirect every .html page and blog URL with a 301 on the WordPress side, since Weebly's own 301 Redirects list under Settings → SEO stops applying once your domain points elsewhere.
Sites that only ran on a yoursite.weebly.com subdomain have no path-level redirect to a new domain, so their rankings do not carry over.
Getting content out of Weebly
Weebly has no WordPress export, so the content comes out in pieces:
- The site archive. Weebly can package your published site as a ZIP file of static HTML, CSS and uploaded images. It is a useful backup and the easiest way to collect images in one place, but it is built around the main pages, so do not count on it for individual blog posts.
- The RSS feed. Save
/1/feedas a file and import it with the RSS importer under Tools → Import. It carries only recent posts, so it suits small blogs; larger ones end up partly copied by hand. Imported posts keep links to images on Weebly's servers until you replace them. - Copy and paste for everything else: page text, contact details, embedded forms.
None of these routes carries the page title and description you set in each page's SEO settings, so note them per page as you go. Store pages under /store/p/ need their own plan; Weebly's commerce side is now tied into Square, and product data is best exported from whatever your store dashboard offers and then mapped into WooCommerce's CSV importer.
Two generations of blog URL
Weebly changed its blog URLs years ago, and many sites carry both formats in backlinks. On a blog page named new-blog, the same post can be linked as:
/new-blog/first-post(the current format, named after your blog page)/1/post/2010/05/first-post.html(the legacy format, still found in old links and shares)
In WordPress, a custom permalink of /new-blog/%postname%/ keeps the current format intact apart from the trailing slash. The legacy form needs a redirect, and because it embeds the year, month and slug, one server rule handles every post whose slug survived the import:
RewriteRule ^1/post/\d{4}/\d{2}/([^/]+)\.html$ /new-blog/$1/ [R=301,L]
Archive pages like /new-blog/archives/05-2010 map naturally onto WordPress month archives (/2010/05/), and /new-blog/category/recipes onto /category/recipes/. The blog index itself moves from /new-blog.html to whatever page you set as the posts page.
Redirecting the .html pages
List every page from Weebly's /sitemap.xml, then decide each WordPress slug. If you keep the same names, the pattern is mechanical: /services.html becomes /services/. Two ways to implement it:
- Hydrogen SEO's Redirection Manager, one Exact Match 301 per page. For a typical small business site of 10 to 40 pages this takes minutes and needs no server access.
- A server rule that strips the extension for all pages at once, followed by exceptions for pages you renamed. The redirect rule generator builds the exception list from two columns.
Whichever you use, the rules must sit on the host your domain resolves to after the switch. Weebly cannot serve them for you once the DNS changes, and copying Weebly's existing 301 list is still worth doing so older moves keep working, each pointed straight at its new WordPress target.
Rankings during and after the switch
Because nearly every URL changes, a Weebly move shakes rankings more than a builder that shares WordPress's URL style. Google has to recrawl each .html address, see the 301 and transfer signals to the new URL. For small sites that often happens within a couple of weeks; sites Google crawls rarely take longer. The risk is not the redirect itself but mistakes in it: a page redirected to the homepage, or a legacy blog URL left out, loses its standing. Keep the redirects in place permanently, since old .html links in directories and emails never update.
After the move
- Test each old
.htmlURL and at least a sample of/1/post/URLs for a single 301 to a live page. - Replace image links that still point at Weebly's servers with uploaded copies.
- Re-enter page titles and descriptions; the site audit finds any page still missing one.
- Submit the new sitemap and watch the Page indexing report for 404s.
- Cancel the Weebly plan only after these checks pass.
Common questions
Can WordPress keep my .html page URLs?
Not without extra plugins or rewrite work, and it is rarely worth it. A one-hop 301 from each .html address to the clean WordPress URL passes its signals along and keeps old links working.
Do Weebly's 301 redirects carry over to WordPress?
No. They are stored and served by Weebly, so they stop working when your domain moves. Copy them into your WordPress redirects before the switch.
What about old /1/post/ blog links?
They are the legacy Weebly blog format and still appear in backlinks. Redirect them to the new post URLs, either one by one or with a single server rule when the slugs match.