What Is WordPress?

If you are reading this particular blog, it is most likely that you already know what it is. Nevertheless let’s try to define what WordPress is.

WordPress is a free and open source web publishing platform which helps you create, manage and maintain your own site or blog. WordPress started in 2003 and today it has grown to power more than 27% of the web.

WordPress began as a simple blogging tool and has evolved to a very powerful and easy to use content management system (CMS) used by millions of bloggers, businesses, celebrities and institutions worldwide.

Along with this success came a very large community which supports, develops and improves it. Thousands of individual developers, small teams and large companies contribute daily to WordPress by adding new functionality, helping fix issues and spread the word to new users around the globe.

A brief history of WordPress

It all started in early 2003 with a post and the goal of “enhancing the typography of everyday writing”.  It was started by Matt Mullenweg and Mike Little as a fork of b2 and became its official successor. The first ever release, version 0.7 was made available for download on May 2003.

In January of 2004 v1.0 was released which made the installation simpler, added search engine friendly permalinks and more.

Where it all started. WordPress version 1.0

Later in 2004 v1.2 brought in plugin functionality which allowed developers and users to add extra functionality to WordPress in an easier and more manageable way. In early 2005 v1.5 brought in static pages and theming functionality.

Version 2.x introduced, among others image uploads, a revamped administrator interface, an extended editor, a new taxonomy system for categories, better search and more.

WordPress version 2.0

In 2005 WordPress co-founder Matt Mullenweg created Automattic. Subsequently the WordPress trademark and logo ownership were transferred to the WordPress Foundation to ensure that WordPress could grow independently.

With version 3.x WordPress got faster, lighter, got the admin bar to make navigation easier, custom post types and custom taxonomies bringing it a step closer to CMS status, automatic maintenance and security background updates and more.

Currently we are going through v4.x which up to now has provided users with the customizer, better media management, plugin discovery, distraction free writing and more.

The WordPress license

WordPress is free and open source software, released under the GPLv2 or later license. This means that you are free to download, use, modify and distribute it. However according to its license, any derivative works automatically inherit the GPL license.

Copyright

Due to its open source nature, WordPress has a very large community of developers supporting and improving it. Each user that contributes to the project holds the copyright for their code, however as stated before, due to WordPress’ license, any contributed code must be also licensed under GPL so all other users can use and modify it freely. According to WordPress.org derivatives of the WordPress code, such as plugins or themes, also inherit the GPL license. This last bit has been a point of contention among some authors, but WordPress foundation strongly supports its and only hosts fully GPL compatible themes and plugins to its repositories.

User generated content however is not considered derivative work. The author holds the copyright for anything they post, unless of course you are writing about GPL licensed software and using parts of it to make a point or provide examples. If you own a travel blog, or provide financial analyses of current events, write about the weather etc, the content is yours and it does not inherit the GPL license.

Who uses WordPress

As mentioned earlier, WordPress is used on more than 25% of the web, with that in mind you would expect to find all sorts of different WordPress users, and this is true. Let’s take a look at some examples.

thisisFINLAND

The site’s content is produced by the Ministry for Foreign Affairs of Finland and published by the Finland Promotion Board, it is used to promote the country, its culture and its people.

Sweden.se

Sweden’s official site and source for all sorts of fact regarding the country. It is publicly funded, with four organisations behind it: the Swedish Institute (SI), Business Sweden, VisitSweden and the Swedish Government Offices, including the Ministry for Foreign Affairs, the Ministry of Culture and the Ministry of Enterprise, Energy and Communications.

Renault Group

The French automotive manufacturer has built the group’s portal on WordPress.

The Gnome Project

The Gnome Project completely redesigned their site along with their GNOME 3 release and chose WordPress as its platform.

Usain Bolt

The fastest man alive has chosen WordPress to host his site.

BBCAmerica

BBCAmerica has created a very large multisite WordPress installation which is used to host and serve the company’s content to users in America.

Other notable sites using WordPress are The Walt Disney company, WNBA, Bloomberg Professional, Dassault Aviation and more.

As you can see apart from the millions of bloggers, WordPress is used by almost everyone, be it countries, broadcasting organizations, celebrities, all kinds of businesses, educational institutions etc.

The community

It’s beyond doubt that WordPress wouldn’t not be at its current position without the community that’s built around it. Ranging from large companies, all the way down to the millions of its users it’s the people that brought it to the top. As it is with many opensource projects, the community is very open and welcoming, thousands of people donate their time and knowledge on official and unofficial forums to help newcomers to get to know WordPress. But it does not stop here, it’s not only online interaction, WordCamps are frequently organized conferences all around the world where people meet, greet and talk about WordPress. WordCamps tend to be larger and more coordinated events and are rarely held at the same place more than once a year, however if you want to get your WordPress fix more often, there’s yet another way, WordPress meetups are smaller gatherings of WordPress enthusiasts, these are more spontaneous and usually happen much more often, most major cities have their own, at the moment of writing there are almost 1200 individual WordPress meetup groups around the world with close to half a million members. Check the directory out and if you find one near you be sure to check it out!

Conclusion

WordPress is now 14 years old, and its life has been very exciting so far. Starting from a small two person project to make blogging easier it has grown to be one of the largest most successful and most popular open source projects in the world.

The WordPress project has allowed countless of developers and companies to make a living and even more people to find an outlet to express their thoughts and showcase their work.

As for its future, no one can say for sure, but WordPress and its community seem to carry a lot of steam and continue to grow to this day. There is a very ambitious goal of hosting 50% of the web, it seems far fetched but with the right people at the wheel, who knows.

WordPress.org VS WordPress.com

If you are a new blogger or new to the world of WordPress you might not know the differences between WordPress.org and WordPress.com, or even that there are differences at all.

In this guide we will try to briefly describe how each platform works, compare them and try to reach a conclusion on which one to use depending on the type of user you are.

WordPress.com

WordPress.com is a commercial platform owned by Automattic a company created by the co-creator of WordPress. As hinted by its name, the platform runs on WordPress and it allows you to host your site for free (with certain limitations).

If you choose to create a site on WordPress.com you won’t have to worry about hosting and setup costs. You can have a free site forever on the service’s basic plan. You also don’t have to worry about site maintenance, no updates, no backups, no worries, everything is taken care for you in the background. All you need to do is create an account, select a theme and start publishing your content.

WordPress.org

WordPress.org is the site from which you can download the WordPress software to install it on any host of your choice, even locally on your own computer. Through this site you can also access the software’s extensive documentation to help you get started, everything you need to learn, and then some can be found here. You can also become a member of the WordPress.org forums where you can post any question or problem you might have related to the software and its usage and get answers from the millions of existing users.

This self-hosted version of WordPress requires you to find a hosting service where you will install it, and connect to it a domain name which you will also have to purchase. Once everything is up and running you are also tasked with the site’s maintenance, you need to make sure everything is up to date and backed up properly to avoid mishaps. If you’re a WordPress newbie and looking to learn more about it, you can level up your skills and learn WordPress here.

Pros & Cons

Now that we have a basic idea of what each service offers to the user, let’s try to compare the pros and cons of each one to help you decide which one best suits your individual needs.

WordPress.com

Pros
  • It can be free forever. If you do not need custom domains or don’t plan on uploading loads of photos and videos, you won’t have to pay a penny to use it, ever.
  • Very easy to get started. Just sign up, choose a theme and start writing away.
  • Themes are carefully curated by Automattic staff. All themes undergo a very thorough review process to make sure code quality meets Automattic’s standards and that theme security and performance is up to par.
  • No maintenance needed, security updates and backups are taken care automatically behind the scenes. You are also protected against comment spam.
  • Perhaps the perfect choice for beginners and non tech savvy people.
  • Support forums are available where users can seek help from both community members and “happiness engineers”, which are support personnel employed by Automattic.
Cons
  • There is a limited selection of free themes to choose from, then you can select to purchase a number of curated premium themes available on the service’s marketplace.
  • No custom themes permitted. You can’t upload any theme you like, you can only select from the pre-approved ones.
  • No custom plugins allowed. Some popular plugin like functionalities have been implemented into Jetpack, but that’s it for now, no custom plugins can be installed to get extra functionality on your site.
  • In the free version you can’t customize the theme’s appearance, no alternative fonts or custom CSS is available to free users, this is only available on the Premium and Business plans.
  • Limited storage space on both the free and Premium plans. Only the Business one comes with unlimited storage.
  • Ads. Your site will display ads on non logged in users when using a free account.
  • No monetization for free users.
  • Google analytics integration available only for Business users.
  • There are T.O.S. which means that violation might incur site termination with possible loss of data.
  • No eCommerce solution available.

WordPress.org

Pros
  • The software it self is free to download and use.
  • Extensive documentation is available online, also there are support forums where you can easily get help, all these can be found at wordpress.org
  • You have full control on your site, its setup, configuration and content.
  • You can install any of the thousands custom themes and plugins available either on wordpress.org’s directories or any other third party source you trust.
  • Less storage restrictions.
  • You can monetize your site any way you choose.
  • e-commerce functionality
  • Google analytics and any other analytics method can be easily implemented.
Cons
  • You need to buy web hosting and a domain name in order to get your site up and running.
  • You are responsible for updating and maintaining your site, which is not as hard as you think, updates are dealt with one click and there are a ton of plugins to help you with backup, security and spam protection.

What should you choose?

That’s a very good question. Cost wise both options can range from very cheap (or even completely free) to extremely expensive when looking and .org managed hosting or .com VIP services, so cost should not be your primary deciding factor. You can weight it in along with everything else, but in every case the more you need the more it will cost.

The decision most likely comes down to personal preference. If you are someone who just wants to write something and “get it out there” without having to bother with anything else, then you would probably be just fine with WordPress.com. If on the other hand you want to create a strong web presence for your company or showcase your works in a unique way, then you would most likely want to have full control over every aspect of your site, you would want to find a particular theme that match your needs or even build one yourself if you can, if you are looking for specific functionality, well, it’s almost certain there’s a plugin for it and if not, someone can build if for you, WordPress.org is the way to go if absolute control and extreme customization is on your mind. Last but not least, in a self-hosted WordPress installation you have the control over your content, even if your host goes down, you have your backups and you can be up and running somewhere else within minutes.

How to create a WordPress.com website

Today’s guide is more focused on people that don’t want to mess around with technical stuff and just want a place where they can publish their thoughts and content, quick and simple. The tool to get you there is WordPress.com, the commercial version of WordPress. If you are new to WordPress and want to know more about it check this out, otherwise if you are familiar with it but don’t know the details regarding the commercial and the self-hosted versions, have a look at this.

Now that you have all the required background knowledge, let’s get started with creating a site on WordPress.com

Getting started

The first step is visiting WordPress.com and clicking the Get Started button.

The folks over at WordPress.com have broken down the sign up procedure into a few easy steps:

  1. Choosing the type of site you want to create.

    Choose whichever option suits your needs best. This will help the guide suggest themes that could work for you.
  2. Next you have to select what sort of site you want to build. Available options are Blog, Website, Portfolio and e-Commerce*. Pick one to proceed.
  3. On the third step the guide will present you with a selection of suggested themes based on your two previous choices, pick one to continue, if you don’t like them, don’t worry, this can easily be modified later.
  4. Next comes the hard part, naming your site. If you have a name in mind go ahead and enter it in the box, if you are lucky and it’s not taken, you’re good to go, otherwise you will get suggestions for similar ones. Automattic oversees the sale and registration of .blog domains, so you get this option as well. If you have your own domain you can make it work with your WordPress.com site, for a fee.
  5. Once you are done with the name, you can choose your plan. We’ll go with the free one for the purposes of this guide, but all the details are there, if you see something interesting on the Personal, Premium or Business plans, feel free to choose one.
  6. The sixth and final step, asks for your email and a password. Fill them in and proceed.

    That’s it, you are done, once you click the Continue button you will be taken to your new site.

Your new site

Following the sign up guide, is a very small intro of your new site.

You will be shown the admin sidebar and a quick run down of its main functionality, like adding posts, pages and managing your account.

The intro also points out how you can customize your site by changing themes, colors, fonts and more.

Adding your first post

The last part of this guide will get you where you need to be, creating content.

To create your first post click the Add button next to the Posts section on the admin sidebar.

In the post creation screen fill in the title and content. The text editor is pretty straight forward, if you have used any text editing app you should be familiar around it. You can add categories, tags, a featured image and more to your post here as well. Once done click the Publish button and you are done.

That was it. Congratulations, you now have your own WordPress.com site and can start adding content.

*e-Commerce option: Currently WordPress.com does not offer and e-Commerce option, what you get if you select this is a self-hosted version of WordPress on a managed hosting service.

How to install WordPress locally

When developing a WordPress theme or plugin, it’s useful to have an installation of WordPress on your computer. AMP stacks are very popular for local development, apps like XAMPP or MAMP, WAMP etc, will give you a local server environment where you can install WordPress just like you would on a normal hosting server.

In this guide we’re going to take a look at a tool that makes this procedure much easier.

Local by Flywheel

Local by Flywheel is a Docker based tool built to take all the fuss out of creating local WordPress installations. It’s designed to help you create new, independent, local WordPress installations with just a few clicks.

Installation

The app is currently available for MacOS and Windows, and can be downloaded from this URL.

Once you download the installer, you will need to run it. You will be presented with a screen similar to this one:

The setup wizard will guide you through the installation and configuration of the required components. The steps here include installing VirtualBox, creating a host machine and downloading the required virtual machine image.  Most things are completely automated, what you might have to do is approve a few changes if you need to install VirtualBox.

First Run

After the installation is completed, you will be presented with the application’s main screen.

There are two tabs available on the top left hand side of the window, Sites and Settings. Let’s start by checking out the settings.

Settings

The starting section allows us to configure the default environment for our sites. You can select your preferred PHP version from the five available ones in the drop down. Similarly, you can choose between MySQL 5.5 or 5.6, and between Apache and nginx. You can also set a default administrator username, password, and email so you won’t have to input them on each site separately. Finally, you can modify the default path where the sites will be stored on your computer.

From the settings tab you can also export an existing site, and create blueprints for later usage. Finally, the add-ons section allows you to activate any available add-ons, such as live links or Xdebug IntelliJ integration, which come pre-installed.

Creating a new site

Now let’s go back to the Sites tab and click the Add Site button.

Site Setup

To create a new site first we need to fill in the site’s name, its domain and the path where all the related files will be stored.

Environment

Next in the environment section we need to select the PHP & MySQL versions we want to run and our web server, of course this is optional, you can just proceed by using the defaults we set up in the previous step.

WordPress

Finally, we need to configure WordPress. We can select between a normal or a multisite installation, and set the administrator’s information (again this is optional if we have set defaults).

Once done, just click the Add Site button. Just after this you will be prompted to allow the program to edit your hosts file, this is normal and it’s required in order for the custom domain to work.

The next screen will inform you on the site’s creation progress, which will only take a few minutes.

When the site is created you will see the screen above which provides you with all related information. There are links to get you to the site itself or directly to the administration area (View Site and Admin respectively), you can also switch PHP’s version and the web server very easily. Under the Database tab on the top right you will find a link to connect to the site’s database using Adminer. Another useful tool can be found under the Utilities tab is called Live Link. By enabling it you will create a secure tunnel to your localhost using ngrok, this allows you to share the link with clients or other developers so they can check out your site.

Good to go!

That was it, pretty simple right? You can now visit your custom domain on the browser of your choice and start working on your new local WordPress installation.

How to install WordPress on your web server

In our previous guide we took a look at creating local WordPress installations. Now let’s see how we can install WordPress on a web host.

Our host of choice is SiteGround ( do we need more info here? ), but since most hosts offer the same basic tools to make installations easier, it’s almost certain that you’ll be able to follow along on your host.

Navigating to cPanel

After you login to your account you will see this screen:

Click the Accounts tab to proceed.

In this tab you will find a button that takes you to cPanel, click it to continue.

WordPress installation via Softaculous

Most hosts use Softaculous to streamline the installation of various applications, including WordPress, for their users.

In your cPanel dashboard locate the WordPress tools secton and click the WordPress installer button.

You will be forwarded to the Softaculous panel ready to install WordPress.

Here you will get brief overview of WordPress and you can also read about its features if you are not already familiar with it. Once you are done with reading, click the Install Now link, or the blue Install button found at the leftmost part of the tabs navigation bar.

Installer configuration

The installer needs some basic information in order to proceed, these are presented and explained below.

Software Setup

The software setup section requires you to select a protocol between http and https. If you have the option go for https since it’s most secure and you will prevent your visitors from getting “Unsafe connection” warnings from their browser when visiting your site. If you have multiple domains attached to your account you can select the one you want to associate with this WordPress installation. Finally, if you wish to install WordPress in a subfolder just fill in the directory name in the respective input.

Site Settings

Here you can select your site’s name, tagline/description and enable WordPress multisite if you need it.

Admin Account

This section is pretty straightforward, fill in your desired administrator username, password and email.

TIP: do not use admin as your administrator username and make sure you generate a strong password.

Choose Language, Plugins & Themes

In this section we can set the site’s default language, select any recommended plugins by our host and choose another starting theme instead of the default ones.

TIP: if you see a plugin such as the Limit Login Attempts above and you are not planning to use another similar one, it is recommended that you enable it in order to negate brute-force attacks on the WordPress login page. 

Advanced Options

All modifications in the Advanced Section are optional, it is recommended that you avoid changing anything unless you are familiar with what you are doing.

TIP: If the Table Prefix is set to WordPress’ default wp_ it is suggested that you change it to something else for security reasons.

Once you are done with the installer’s configuration, click the Install button to start the installation.

Installation Progress

You will be presented with a progress bar that indicates the installation’s status. It’s usually pretty quick and should be complete in less that five minutes.

The following screen will notify you about the completion. You will also receive an email with the same information.

That’s it, your site is up and running, just click its URL to view it or the administrator URL to start adding content.