WordPress is the most well-known CMS used on the web today. Approximately 20-25% of all new websites is build on this platform. This is 1 in every 4 to 5 new websites! It is good to know that there are two versions of WordPress, a free hosted version on wordpress.com and an open source branch available on wordpress.org. Since we are developers and love open source, we mainly talk about the wordpress.org version. We love open source due to its big community. Bugs in the platform are discovered early and if you have a question there are tons of resources on the web. A few of the advantages of WordPress are
- Easily managing content. Managing your site was never so easy and there is no excuse anymore to not keep your site up-to-date! And all of this without the need of programming skills.
- Content and layout are separated. This means that independent of your posts and pages you can quickly change the look and feel of your site.
- A long history. Although WordPress started in 2004 as a blogging platform, today we can create professional websites and even complex applications using WordPress.
However, before you can start adding your content to the web, it is time to install WordPress, pick and configure a theme and add some must-have plugins. We’ll treat these points below.
We assume you have your domain ready and some server space somewhere. There are tons of hosting companies but not all are ideal for hosting a WordPress website. So take some time to choose wisely. You probably have access to a direct admin environment and you should be able to create a new database. This is where your settings, posts and pages will be stored. So go ahead and create that database. Write down the credentials you’ll need them in a minute.
Download WordPress from the official page in the language you prefer and find the wp-config.php file. In this file you need to put your database credentials and then it is time to upload the whole directory structure to your server. Finally, it is time for the famous 5 minutes install!
Now you are ready for the next steps: choose a theme and add some plugins.
The look and feel of your site are dictated by your theme. A theme is nothing more than a bunch of templates and stylesheets that make your website look good. Depending on your wishlist for the site you can choose a simple free theme or a complex premium theme with lots of options. It is up to you!
If you would like to start with a light and clean theme to create some magic yourself, then we advice the good-old twentytwelve theme. However, if you don’t like to spend time changing templates and stylesheets you better choose a theme with a bit more goodies in it. There are really tons of sites with free and premium themes out there. In my opinion there are enough free themes in all kinds of styles, but the number of features in these themes is limited. However, for a simple site with a few pages and a blog, this is fine. In case of a portfolio website, where you greatest work needs a prominent place, a specific portfolio theme with large images or full screen sliders might be a better choice.
Looking for a feature rich theme with lots of options and fully customizable? Than you probably end up with a premium theme. My experience with these themes is that it is quite hard to see if a theme really suits your need because most demo sites have beautiful (stock) images which makes it hard to see if this is the theme you need. In principle a website is as good as its content and with content we mean both text and images.
When you finally found a theme it is best to create a child theme and make your own changes inside this child theme. In this way you will always be safe when updating the original theme. If you are changing the templates of the theme itself, all changes will be lost if you apply an update to the theme. Therefore, my advice is to start of with a child theme or choose to never update your theme.
Soon you will recognize that the standard features of WordPress are rather limited. For example, a contact form is not a standard feature, although most premium themes will come with a contact form. Extended functionality can easily be included by using plugins. A plugin is simply some extra code that is attached to the WordPress framework to add some functionality.
There are many, many plugins out there, estimated at 200.000 currently. A direct consequence of this huge number is the difficulty to find a plugin that does exactly what you intend. Apart from that, not all plugins are well programmed or actively maintained. Therefore, a good advice is to only use plugins from the official WordPress plugin directory. Read the plugin description carefully, check the number of downloads and if the plugin is compatible with your WordPress version.
Even though there are tons of themes and plugins out there, it is possible that you want a specific feature that is not supported yet by any plugin. For example a special template for showing your posts, a way to couple your website to another online system or anything else you can think of. If it can not be found in the available themes and plugins it is time to build these features yourself.
Changes in the looks of the site can generally be achieved by using only CSS. Inside the theme folder (or rather, the child-theme folder), a style.css file exists. Add your changes and upload the file to see your changes. A more challenging task is changing the HTML of a specific page. Then you have to find the template and work your way through some lines of PHP and HTML. A quick overview of the template hierarchy of WordPress might come in handy in this case. Although overwhelming at first, the modular way of setting up the templates makes it very easy to extend the platform!
If your wishlist contains a feature that you might want to use on other sites also, or that is interesting to other WordPress users also, it is time to build a plugin. If you are going this way, don’t forget to add some hooks and filter for optimal extensibility of your work.
And finally this…
So far we talked about setting up a new WordPress website and the steps involved. Following these steps is not the only thing though. Below some other important points to consider.
Backups are definitely an important part of any website including WordPress. Since a WordPress site consists of a database and the files, you must have a strategy to backup both. If you are only using WordPress as a blog, focus on the database, because all your posts are stored in the database. If you also changed a lot of templates and CSS, make sure to backup the files as well. There are a lot of plugins for automatic backups en this is definitely something to setup. We recently wrote a post about restoring a backup when needed, assuming the backup was performed using the WordPress to Dropbox backup plugin.
Apart from backups, WordPress security is very important. Since it is the most used platform in the world, hackers are very interested as well. Besides regularly updating your site, a good security plugin is essential for keeping your site healthy and secure. You can read more about the iThemes security plugin we use a lot in our post.
And what about visitors that can’t read the language of your site? Well, translation of your site has the potential to unlock your content for a much larger audience. The well known WPML plugin will help you to quickly setup your site in multiple languages. We also got you covered here with a post with some hints and tips about using this plugin.
And selling stuff, is that possible with WordPress? Off course you can! The WooCommerce plugin will turn your website in a webshop in a matter of minutes. Manage your products, orders and customers in the WordPress backend, add some payment portals and there you go. The necessary pages for showing your product catalog, a product detail page, the shopping cart and the checkout are created automatically and it is quite easy to change the templates of this excellent plugin.
Finally, there is no fun without visitors on your website. WordPress is already SEO friendly, but the Yoast SEO plugin is a must have for every WordPress website. Both starting and experienced developers will love this plugin for its ease in use and depth in functionality. Once your SEO is working for you, you can check your sites’ statistics using the built-in Google Analytics widget in the WordPress backend!
Blogs about WordPress
We write on a regular basis about WordPress since we use it a lot in our daily work. Stay tuned!