get_theme_file_path( string $file = '' ): string
Retrieves the path of a file in the theme.
Contents
Description
Searches in the stylesheet directory before the template directory so themes which inherit from a parent theme can just override one file.
Parameters
-
$file
string Optional -
File to search for in the stylesheet directory.
Default:
''
Return
string The path of the file.
Source
File: wp-includes/link-template.php
.
View all references
function get_theme_file_path( $file = '' ) {
$file = ltrim( $file, '/' );
$stylesheet_directory = get_stylesheet_directory();
$template_directory = get_template_directory();
if ( empty( $file ) ) {
$path = $stylesheet_directory;
} elseif ( $stylesheet_directory !== $template_directory && file_exists( $stylesheet_directory . '/' . $file ) ) {
$path = $stylesheet_directory . '/' . $file;
} else {
$path = $template_directory . '/' . $file;
}
/**
* Filters the path to a file in the theme.
*
* @since 4.7.0
*
* @param string $path The file path.
* @param string $file The requested file to search for.
*/
return apply_filters( 'theme_file_path', $path, $file );
}
Hooks
-
apply_filters( 'theme_file_path',
string $path ,string $file ) -
Filters the path to a file in the theme.
Changelog
Version | Description |
---|---|
4.7.0 | Introduced. |
User Contributed Notes
You must log in before being able to contribute a note or feedback.
We can use this function to allow child theme to overwrite the functional file of the parent theme.
Thanks