This article will show the WordPress theme file execution hierarchy. In a nutshell, we’ll look at what files are served when you load a page in WordPress. You probably already know that detail posts are served by single.php and detail pages are served by page.php, but WordPress searches different files based on various factors, so we’ll take a look at how that works! p>
The first thing we should determine is: without index.php and style.css, your theme is no longer a valid WordPress theme... So this is It stands to reason that if you only have these two files, then every page you try to load will be served by index.php. Take a quick look at this "cheat sheet" to see what I'm referring to:
Please note that the process for each page type will end with index.php. This is why index.php is a required file for WordPress themes. If we are missing any other file in the WordPress theme (for example, if the “search.php” file is not included in the theme), then index.php will be provided.
Now let's look at some details about the order of execution. I’m going to show you the process of WordPress searching for files in the active theme folder. I hope this is useful as you start creating WordPress themes from now on:
I will go through each type of file one by one and show the execution hierarchy of the same files.
Homepage
This is the first and most important page of any website. So WordPress provides scope for customizing pages. Let’s take a look at the file hierarchy for the home page.
- front-page.php
- home.php
- index.php
When serving a homepage, WordPress will search for front-page.php. If not found, it will use home.php. If home.php exists, it will use it. If not, it will default to index.php.
WordPress Post Details
- single-[Post type].php
- single.php
- index.php
WordPress can have as many post types as we need. So it will be easier to get different designs for all/certain post types. By default, "post" is WordPress's primary and default post type.
For example, if your custom post type is product, then it will be single-product.php
To know more about how to add a new post type in WordPress, you can refer to this link.
WordPress Page Details
- [Custom template].php
- Page-[slug].php
- Page-[id].php
- page.php
- index.php
Like post types, we can have different page layouts using custom page templates. So WordPress first searches for the file of the selected page template if it exists.
If not found, the file of the current page slug will be searched. Basically, if the slug is aboutus, then it will search for the file page-aboutus.php in the active theme folder.
WordPress will search for files with IDs just like files with slugs.
Category Page
- Category-[slug].php
- Category-[id].php
- category.php
- archive.php
- index.php
From the above process, you can understand how to use different templates for category pages. For example, you could have a custom page based on slug and id, and then use the default "category.php" file for the rest of the categories.
Bookmark page
- tag-[slug].php
- tag-[id].php
- tag.php
- archive.php
- index.php
This will be the same as category. You can also set up different pages for tag slug and tag id.
Category page
- Classification-[Tax]-[Term].php
- Category-[Tax].php
- taxonomy.php
- archive.php
- index.php
Here are the different file hierarchies for category pages.
Author page
- Author-[Author Nickname].php
- Author-[Author ID].php
- Author.php
- archive.php
- index.php
Here you will know that you can also have different designs based on the user. Same with categories and tags, we can have different files based on the user's slug and ID.
Attachment page
- [mime type].php
- Attachment.php
- single.php
- index.php
Here you can see that different types of attachments can have different page layouts. These can be distinguished from the MIME type of the attached file.
Date Page
- date.php
- archive.php
- index.php
For date specific layout, we can create date.php in the theme folder. The process then goes to archive.php and finally to index.php.
Archive Page
- archive.php
- index.php
As we move down through the file types, the number of files in the hierarchy decreases. This is the basic file or we can say the most commonly used file in any WordPress theme.
Search page
- Search.php
- index.php
You can use search.php to customize search results first. If search.php is not available, index.php will be served.
404 page
- 404.php
- index.php
If the page or post is not found, WordPress will search for 404.php and if not found, it will serve index.php.
in conclusion
Obviously you can use this information in a number of ways to load custom templates for various pages... In many cases you can get a custom solution without modifications, even if you use an existing theme Existing theme files. You just need to create the new file and give it a new name using the information above.
Share your ideas and any other files that can be included above the hierarchy.
The above is the detailed content of Execution Hierarchy of WordPress Theme Files. For more information, please follow other related articles on the PHP Chinese website!

Yes, WordPress is very suitable for e-commerce. 1) With the WooCommerce plugin, WordPress can quickly become a fully functional online store. 2) Pay attention to performance optimization and security, and regular updates and use of caches and security plug-ins are the key. 3) WordPress provides a wealth of customization options to improve user experience and significantly optimize SEO.

Do you want to connect your website to Yandex Webmaster Tools? Webmaster tools such as Google Search Console, Bing and Yandex can help you optimize your website, monitor traffic, manage robots.txt, check for website errors, and more. In this article, we will share how to add your WordPress website to the Yandex Webmaster Tool to monitor your search engine traffic. What is Yandex? Yandex is a popular search engine based in Russia, similar to Google and Bing. You can excel in Yandex

Do you need to fix HTTP image upload errors in WordPress? This error can be particularly frustrating when you create content in WordPress. This usually happens when you upload images or other files to your CMS using the built-in WordPress media library. In this article, we will show you how to easily fix HTTP image upload errors in WordPress. What is the reason for HTTP errors during WordPress media uploading? When you try to upload files to Wo using WordPress media uploader

Recently, one of our readers reported that the Add Media button on their WordPress site suddenly stopped working. This classic editor problem does not show any errors or warnings, which makes the user unaware why their "Add Media" button does not work. In this article, we will show you how to easily fix the Add Media button in WordPress that doesn't work. What causes WordPress "Add Media" button to stop working? If you are still using the old classic WordPress editor, the Add Media button allows you to insert images, videos, and more into your blog post.

Do you want to know how to use cookies on your WordPress website? Cookies are useful tools for storing temporary information in users’ browsers. You can use this information to enhance the user experience through personalization and behavioral targeting. In this ultimate guide, we will show you how to set, get, and delete WordPresscookies like a professional. Note: This is an advanced tutorial. It requires you to be proficient in HTML, CSS, WordPress websites and PHP. What are cookies? Cookies are created and stored when users visit websites.

Do you see the "429 too many requests" error on your WordPress website? This error message means that the user is sending too many HTTP requests to the server of your website. This error can be very frustrating because it is difficult to find out what causes the error. In this article, we will show you how to easily fix the "WordPress429TooManyRequests" error. What causes too many requests for WordPress429? The most common cause of the "429TooManyRequests" error is that the user, bot, or script attempts to go to the website

WordPresscanhandlelargewebsiteswithcarefulplanningandoptimization.1)Usecachingtoreduceserverload.2)Optimizeyourdatabaseregularly.3)ImplementaCDNtodistributecontent.4)Vetpluginsandthemestoavoidconflicts.5)ConsidermanagedWordPresshostingforenhancedperf

WordPress is very customized, providing a wide range of flexibility and customizability. 1) Through the theme and plug-in ecosystem, 2) use RESTAPI for front-end development, 3) In-depth code level modifications, users can achieve a highly personalized experience. However, customization requires mastering technologies such as PHP, JavaScript, CSS, etc., and pay attention to performance optimization and plug-in selection to avoid potential problems.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

SecLists
SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

SublimeText3 English version
Recommended: Win version, supports code prompts!

Safe Exam Browser
Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

Dreamweaver CS6
Visual web development tools

Atom editor mac version download
The most popular open source editor
