Summary: WordPress is one of the most used content management systems across the World Wide Web, thanks to the features it provides. For many users out there, the process of creating a website using WordPress seems simple as the page loads in just a few seconds. But, there is a lot that takes place "behind the scenes.' Let us learn all about it in this article.
WordPress is open-source software. In simple terms, anyone can study the code and create their own plugins, applications, or themes for it. It is important to learn how WordPress works and how things work in the back-end. This helps you to make changes to the code, improving the overall performance of your website.
The below guide will help you understand the whole process of WordPress – step by step. So, let's get started!
Loading the wp-config.php file
The wp-config.php is the configuration file of WordPress. This is the file that stores the database information, and also sets variables for your website. This is the very first file that gets loaded when someone enters your URL.
Setup of default constants
Once the wp-config.php file gets loaded, WordPress moves on to set various default constants like maximum file sizes, upload location, etc.
Advanced cache.php file
If you have used an advanced cache.php file on your website, it is loaded after the default constants are setup. This is nothing but a drop in file and is also used by various plugins. If your website is using this, you will see Drop-ins on the plugins screen.
Load db.php in wp-content file
WordPress is an excellent open-source system that allows the users to set up their database abstraction layers of their own. These can be loaded to a db.php file, which is placed in the wp-content folder. This file is useful for caching plugins and also helps to improve database performance. If your site has this particular file, WordPress loads it as well.
Connecting Select Database and MySQL
Now that WordPress has needed information to proceed, it connects select database with the MySQL server. If the CMS is unable to connect the server with the database, you might see the error message, "Error establishing database connection." In such a case, WordPress stops right there, and if all works fine, it proceeds further.
Loading object-cache.php
Once the database is connected to MySQL, WordPress looks for the object-cache.php file. If the file is not available, it loads the cache.php file in wp-includes.
Loading l10n.php library
Next, WordPress loads the l10n.php library located in the wp-includes folder. The file which loads on the localization system of WordPress helps load translations and locales etc.
Loading the active plugins
WordPress loads all the active plugins next. There is an active plugins entry located in the options table of the database, which allows WordPress to ignore those plugins that are already installed but are still not activated.
Loading the pluggable.php file
The pluggable.php file of WordPress contains all those functions that can be or are redefined by the plugins activated. WordPress checks if the functions of these files are defined by any other plug-in, otherwise the functions of pluggable.php are defined.
Run the action – plugins_loaded
Next, WordPress runs the action "plugins_loaded" which allows the users or the developers to perform the functions associated with the active plugins.
Loading the rewrite rules
After the above functions, WordPress next loads the rewrite rules. This action helps it to use SEO friendly URLs.
$wp_query, $wp_rewrite, $wp
Once the rewrite rules are loaded, the below-mentioned objects are run by WordPress.
$wp_query – This is a query that tells the WordPress query format the content is needed in
$wp_rewrite – This is the instance that has the WP_Rewrite class. This query has all the rules and functions related to rewrite, and this helps WordPress display the right URL based on the content requested.
$wp – This is the instance that has all the functions needed to complete the primary query.
Action – "Setup_theme"
WordPress next moves on to perform the action – "Setup_theme." This is the action performed before your main WordPress gets loaded.
Loading the functions.php of the child theme
Every theme in WordPress comes along with a child theme that makes it easy to edit. The functions.php is a file that acts more like a plug-in and can be used to add the needed features to the website. If the template you used includes a child theme, WordPress loads the fuctions.php file next. If not it loads the theme that is active as per functions.php file.
Loading the functions.php file of the primary theme
Once the functions.php file of the child theme is loaded, WordPress next loads the same file from the parent theme.
Performing "after_setup theme" action
This is the action performed by WordPress after the child, and the primary theme functions are loaded. This is the action performed related to the theme of the website.
Setting up the current user object
This is when WordPress sets up the current user object. Using this action, your website is effectively managed as per the roles or the capabilities of the user.
By the time the above actions are completed, WordPress has always loaded all the important functions it needs to run your website. Some of the other actions that are performed are,
- Loading the "init" function that allows the users to add any code after all the previously changed information is updated and loaded.
- Performs the action of "widget_init" which lets developers register widgets and easily run the code.
- Runs the wp() function which is located in the file, wp-includes/function.php.
- WordPress next runs the query and shows the 404 variable errors if there is no content available for the content. If content is available, the variables are loaded by performing the action WP_QUERY->get_posts().
- Runs the "template_redirect action next as it helps it determine which page it needs to load.
Loads the feed template
- WordPress next loads the template that has the "WordPress loop."
- Once the PHP execution ends, WordPress performs an action known as shutdown, when it stops working on the query. This is when the user sees the webpage requested.
Well, it does look amazing, isn't it? WordPress completes all these functions in less than one second. If you are a website developed by the best Wordpress development company, your website can load in a matter of few milliseconds. We hope this article helped you understand how Wordpress works step-by-step.
Wisertech Solutions ( Author )
Wisertech Solutions is a reputed and reliable Website design and development company that offers cost-effective services like theme development, plug-in development, website migration and more. With a commitment to empowering your website with the best of WordPress capabilities, Wisertech Solutions is backed by experts who can create beautiful websites placing you on par with world-class brands. https://www.wisertechsolutions.ca/wordpress-development/