My First Blog Setup
When I started blogging, Hugo felt like the perfect choice. It’s lightweight and super quick to set up, which is exactly what I needed. Writing in Markdown seemed fun at first, it’s simple and clean. But as time went on, I realized it wasn’t as convenient as I thought, especially when I just wanted to focus on writing rather than worrying about all the formatting.
Why I Wanted to Migrate from Hugo
The real challenge with Hugo was how updates worked. Every little change meant I had to commit code and redeploy the site. Imagine doing that just to fix a typo! 😅 It worked, but it was overkill for publishing a simple post.
And then there was the static nature of Hugo, no built-in comment form, no subscription forms, and no interactive features. Anything beyond basic content meant building from scratch, which didn’t feel worth the time or effort anymore.
Why I Switched to WordPress
So, why WordPress? The short answer: it made my life easier. The long answer: it gave me all the tools I needed to grow my blog without making it a coding project.
WordPress is dynamic, so I could add comments, subscription forms, and other features right out of the box. No custom coding, no complex setups, just install and go. Plus, WordPress is a proper CMS, so I could log in, make changes, and save them instantly. No redeploying. That kind of convenience was exactly what I needed!
Preparing for the Migration
Before I dove into the migration, I planned things out to avoid surprises. My blog was pretty small – just two pages and two blog posts. So, I decided to keep it simple with a manual migration.
I also double-checked for custom features or integrations on my Hugo site. Spoiler alert: there wasn’t much 😅 (Hey, it was my first blog, don’t judge 😶). This made the migration process much easier since there wasn’t anything complicated to recreate.
Why I Created a Mock Site
I didn’t want to mess up my live site while experimenting, so I created a mock WordPress site to test things out. My goal was to replicate the clean, black-and-white design of my Hugo site while trying out new features.
I used Pantheon for this because it’s free (yes, I love free things! 😛) and gives you a fully functional WordPress environment. I could test plugins, themes, and even customizations without any risk.
After testing a few themes, I found one that was close enough to my Hugo site’s design and started tweaking it to match the look and feel I wanted.
Choosing the Right Hosting
Hosting is one of the most important decisions, and I wanted something reliable, affordable, and easy to manage. After some research, I chose Hostinger because it offered the best features at a reasonable cost. Basically, bang for the buck! 💸
Later, I also found out that WordPress itself recommends Hostinger as one of its top hosting providers. That sealed the deal for me 💪🏻.
If you’re curious about Hostinger, you can check out this review blog.
Creating and Designing the Site
Once I had the hosting sorted, I started setting up my WordPress site. I chose a Full Site Editing (FSE) theme because it gave me complete control over the layout without needing to write a single line of code.
Next, I manually migrated my content, updated the published dates, and adjusted everything to match the design I had in mind. The end result? The site looked exactly how I wanted! 🎉
The best part? The footer! I had so much fun customizing it, and it turned out to be my favorite part of the site as it seems so me!
Setting Up Email Subscriptions
One of my first goals was to add email subscriptions. I used the MailPoet plugin for this because it integrates seamlessly with WordPress and is super easy to set up.
MailPoet offers its own email-sending service, but it’s paid. So, I looked for a free alternative and found Brevo (formerly Sendinblue), which lets you send 300 emails per month for free.
Now, here’s the tricky part. MailPoet doesn’t directly support Brevo, so I had to connect them using SMTP (Simple Mail Transfer Protocol). Something like this👇
Why I Used SMTP
Think of SMTP as a bridge that lets MailPoet send emails through Brevo. It’s not as scary as it sounds, just a few extra steps:
- I generated SMTP credentials in my Brevo account. These credentials are like a key that lets MailPoet talk to Brevo.
- Then, I added the credentials to MailPoet’s settings under the “Send With” configure tab.
But even after setting it up, the emails didn’t send. 😢 Turns out, Brevo needs to verify that I own the domain I’m using to send emails.
To fix this, I added my domain to Brevo’s sender verification section. Brevo gave me a few DNS records to add to my domain settings. Once those were added and updated, everything worked perfectly! 🎉
Making the Site Public
Now came the exciting part – going live! I updated the DNS records for my domain. Since my main domain, iamshreya.in
, is hosted on Vercel, I created two subdomains:
iamshreya.in
for the main site.blog.iamshreya.in
for the blog ( this site )
Now came the waiting game. DNS changes take time to propagate, and I kept refreshing What’s My DNS to check how far along the updates were. After what felt like an eternity (but was probably just a few minutes 😅), everything was live! My blog was finally accessible and was live! 🎉
Setting Up Redirections
After migration, I noticed that my old URLs didn’t work anymore. To avoid broken links and 404 errors, I used the Redirection plugin to redirect the old URLs to the new ones. It’s free, easy to use, and solved the problem in no time.
Here’s how I added the redirection links.
With everything in place, last but not the least – test, test and test – every page, link, and feature to make sure they worked as expected. There were a few hiccups, but nothing that couldn’t be fixed.
Now my site is live at blog.iamshreya.in
, and I couldn’t be happier!
There are a few bugs I’m already aware of, but I’m improving the site progressively. If you come across anything that seems off, I’d love to hear from you – it’ll help me make the site even better!
Leave a Reply