Are you thinking about creating your first site with WordPress? Or have you already made many but every time you wonder if you have made the right choices? Here are some things I’ve learned in these years of work with this CMS.


1) The difficult choice of a theme for WordPress

I still remember when it was 2010, I installed WordPress for the first time. At the time, choosing a theme was not particularly complicated. The alternatives, although not very few, technically did not differ much from each other and this made the choice much easier.

Nowadays, however, the choice of a theme for WordPress is undoubtedly more difficult. The alternatives are extremely numerous. Just take a tour on sites like Themeforest or WooThemes to get lost among the hundreds of themes available.

There are also a number of frameworks designed to facilitate the creation of new themes, such as Thesis, Genesis, Thematic, Hybrid, Gantry, Whiteboard, just to name the most famous.

Which solution to choose ? As always, in these cases the correct answer is: it depends.

Personally, I would recommend a framework to those who are used to getting their hands dirty with code, but want to start from a solid, tested and functional base. Frameworks also have some aspects, however, that can be problematic:

  • It is often necessary to learn the logic of that framework to make the most of it and you must therefore take into account an investment in terms of time.
  • It is essential to verify that the framework has a complete and updated documentation, otherwise you may have in your hands a good tool but without the instruction manual.
  • it is useful to evaluate the spread of a framework, to verify how much it is supported and compatible with the various plugins available.

If you don’t want to use a framework and you prefer a simple solution, you are spoilt for choice. A theme ready-made is certainly an easier way, especially when the time is tight. It’s good to keep some points in mind:

  • Many ready-made themes are extremely attractive from the point of view of graphics but are a nightmare to customize.
  • Have a large number of options, but maybe not those that we need.
  • Some are quite heavy and require the loading of several JavaScripts and style sheets, slowing down the loading time of the page.
  • Often make extensive use of shortcodes that must be inserted in pages and posts to obtain particular graphics solutions. These shortcodes, however, can be a problem and an obstacle if in the future you want to switch to another theme.
  • If the developer who created the theme stops supporting it, you might find yourself with an obsolete theme that is difficult to update.

Having said that, I am not against ready-made themes at all, as I have also used them often. In my opinion, however, it is always useful to evaluate case by case whether they are actually the right choice.

Another solution is to start from an extremely minimalist theme like Underscores and realize your own solution starting from scratch, or almost. This theme provides all the files needed to start with a WordPress theme, but leaves the user the creation of CSS style sheets and JavaScript to implement the desired features.

Creating a theme from scratch is undoubtedly a great effort, but it allows you to get a truly customized solution that you can also take advantage of in other projects. You’ll hardly ever find yourself in a situation where you can’t do anything, because the theme or framework doesn’t allow you to. The price to pay is obviously your time and your commitment to documenting yourself.

2) Do not modify the core files of WordPress, a theme or a plugin.

We can define Core files as the default WordPress, theme, or plugin files. That is, files as they are when we download them from the developer’s site.

In some cases you may be tempted to go and edit these files to get the desired result. However, doing so would be a dangerous path, creating an obstacle in case of future updates.

If we modify the main files of a theme or framework that we have downloaded, instead of using a child theme, every time we go to update the original theme we will lose all the changes made. The same applies to changes made to the main WordPress files or to those of a plugin. It’s better to create an ad hoc plugin or use the functions.php file of your theme.

3) Plugins are useful and beautiful but don’t become a slave to them

The WordPress plugin directory has more than 50,000 plugins and it is virtually impossible to know them all and certainly not even worth doing it.

Each plugin installed on your site then, in addition to adding functionality, also weighs down the workload of the server and usually also increases the loading time of the pages.

The basic rule to follow that I recommend is to install only the plugins that you really need.

Also avoid those that are not updated for a long time and those that do not support the latest versions of WordPress.

4) Aims to have a fast site

A beautiful and interesting site can be incredibly penalized by the excessive slowness of loading pages. Would you be willing to visit a site frequently if you had to wait 10 seconds for each page? Probably not and probably not even your readers.

I have already mentioned a complete guide on how to speed up a WordPress site.

5) Your site is more vulnerable than you think

When building a site on WordPress it is a good idea to take security seriously. It is therefore essential to always use the latest versions of WordPress and its plugins.

It is good that the server side of the hosting provider takes care to adopt solutions to protect the hosted sites from the action of potential external attackers.

To make WordPress a little more secure I suggest you to read the part dedicated to security in the Codex of WordPress and also to have a look at solutions like Login Lockdown, Cerber Security, WordFence, SecuPress or my favorite: BulletProof Security.

In addition to this, be sure to make periodic backups of your site either by using specific plugins for WordPress, or by making sure that your hosting provider does it for you. In case of problems having an updated backup copy can really make a difference. For guidance, here is an article dedicated to backup solutions for WordPress.