get_page_template()
Gets the path to the page template in the current or parent template.
The hierarchy for this template looks as follows:
- {page template}.php
- page-{page_name}.php
- page-{id}.php
- page.php
In reality, it looks something like this:
- page-templates/full-width.php
- page-about.php
- page-4.php
- page.php
Learn more about the WordPress theme hierarchy.
The template hierarchy and the path to the template can be changed using dynamic filters (type)_template_hierarchy and (type)_template, where $type is page.
Since version 4.7.0 and above, the template hierarchy has added the file page-{$pagename_decoded}.php, where $pagename_decoded = urldecode( page_name ).
Uses: get_query_template()
1 time — 0.0007071 sec (slow) | 50000 times — 1.84 sec (fast)
No Hooks.
Returns
String. Full path to the page template file.
Usage
get_page_template();
Examples
#1 Get the template file of the current page
echo get_page_template(); //> /home/public_html/wp-content/themes/theme-name/page.php
Notes
- See: get_query_template()
Changelog
| Since 1.5.0 | Introduced. |
| Since 4.7.0 | The decoded form of page-{page_name}.php was added to the top of the template hierarchy when the page name contains multibyte characters. |