I have been trying to convince the School to move away from our overpriced Website hosting provider and moving to a more dynamic, modern website with WordPress and in the process save us at least 20000$ annually.
Coincidently our Schools 30th anniversary was just around the corner, and our communications dept was in agreement about the facelifting our website, and we conceptualized the idea of our new, improved and revamped school website. How did the process go?
First and foremost choose your Website platform
By website platform I mean a Content Management System (CMS), not to be mistaken for Course Management system like Moodle. There are at least 100 of them. Popular ones include Joomla, Magento (More for E-commerce), Drupal, Django, WordPress.
What did we decide on?
We decided to go with WordPress as I had tons of experience with it. Additionally, my mind was fresh of consulting with a couple of other international schools on their move to WordPress and choosing the right Hosting Provider. WordPress has been around for over two decades and has come a long way from being a plain old blogging platform to being capable of hosting large-scale websites with tons of features and modules. Some notable examples of sites on WordPress are
- The New Yorker.
- BBC America.
- Bloomberg Professional.
- The Official Star Wars Blog.
- Sony Music.
- MTV News.
Secure your Web hosting from day zero
This is one thing that I can not stress enough about since WordPress is widely used, you need to lock it down pretty hard. Just due to its sheer popularity, it has become a very common target for hackers and bots, but there are multiple ways to keep it secure using IP Tables on your Linux server, Using wordfence Plugin, Cloudflare DNS & DDOS, etc.
What else we need to decide ? or Worry about before getting your feet wet?
Decide how you are going to host your WordPress
There are multiple ways to host a WordPress site; you can host directly with WordPress, Amazon Web Services (AWS), Google Cloud. We initially thought about using wordPress.com, but we couldn’t integrate their Hosting plan with our Cloudflare DDOS & DNS, so we went about hosting it on our own Data Center.
Additional Recommended Components of your Hosting platform if self-hosting or with any Cloud service provider. I won’t be writing in detail about each of the below steps in the setup, I am going to save for another post.
- Ubuntu: This is the Linux OS that we decided to use, it is lightweight and perfect for hosting WordPress, in fact, it is recommended for WordPress by WordPress, it secure and releases regular security updates.
- Webmin: This is a web-based GUI that makes managing Linux servers a breeze, it has pre-built scripts to install everything needed for WordPress – that included PHP, MySql, Apache, permissions, it also has pre-built IP Tables modules built-in with a default set of rules, good thing about this is that it opened me to the whole world of IP tables. With Webmin, you can manage a whole lot of aspects about the Linux server, otherwise for which you would have to know a lot of the Linux Shell commands.
- Cloudflare: Cloudflare is cloud-based Content Delivery Network (CDN) & Web Application Firewall ( WAF ). At the most basic level, this prevents your site from DDOS attacks and caches frequently used files like JPEG, Videos to make your site load faster. Cloudflare is an absolute must if you are using WordPress, this acts as the first layer of defense. I would highly recommend using this for any of your public-facing websites as well. For 20$ month you can get additional WAF ( rules that prevent your site from Cross-site scripting attacks, SQL injection attacks.
- Wordfence: Wordfence is a long time running IPS/IDS for your WordPress site, this is very popular, and the free version had enough features to keep you away from unwanted traffic, bots, hack attempts. Now you must be thinking but why so much security? Well as I mentioned earlier, the popularity of WordPress is attracting a lot of attention from hackers and bots from around the world, so you have to be careful.
Choose a good theme that is actively updated and has good support, how do you find that out?
We went with a really good theme from ThemeForest, one that was extremely customizable as per our needs and came packed with a ton of features. They have amazing Demos which gives an idea of the functionality that’s packed within. Initially, I was a bit skeptical about using a theme that is very popular because I was worried about it being a target for hackers, but it is better to use a theme that takes security seriously, updates frequently and one that has excellent support.
The below points are markers for choosing a good theme, keep these points in mind when you select your theme.
- Good support / Good support portal with FAQ & Support forums.
- There should be regular updates released, look for changelogs to see how far they have progressed.
- Check popularity and Reviews of the themes.
- Look for a theme that is responsive ( where the page adapts to the size of the screen – whether mobile or desktop )
- Check the community forums for that theme to see how responsive they are.
- Look for themes that are professionally developed by a team of developers/company rather than one guy.
Choose a team of four to five members with the below skill set
- Basic coding skills and ability to understand and explain complex processes, experience with Linux servers, hosting, firewall, SQL, Site migration, etc. ( this guy is me BTW 🙂
- A person who can take good pictures, video and has an eye for quality photos and editing them
- A person who can write good content and can follow with departments to clean up the content and give out good ideas like adding certain colors in Elementary school or Adding stat boxes for each division etc.
You may not need someone with extensive coding knowledge, because in WordPress most of the content and page building is done on a DIY drag & drop editor. It all depends on the Theme that you use. You need to be patient and read through the theme documentation, about 99% of your questions are already answered in the forums and documentation for that particular theme. But none the less it helps to have a person with intermediate coding knowledge.
What else did we find out?
You have to factor in at least five months for the whole process. You then need to test it and do a soft launch for one month. A couple of other things you may want to check are, see if all the forms are working, like contact forms for admissions, withdrawal forms, school info, and address, etc.
- Have weekly milestones
- Never Rush into this project
- Meet every week to discuss milestone achievements
- Form a panel of 5 parents, five staff to test run the site and ask for suggestions
The End Result
Quite frankly I wouldn’t do this post any justice till you checked out the full website at https://asd.sch.qa
Do you need help with rebuilding your School website? Need some free consultation? If you are part of a “Not For Profit School”, then please fill in the contact form and get in touch with me.