get_block_theme_folders( string $theme_stylesheet = null ): string[]
For backward compatibility reasons, block themes might be using block-templates or block-template-parts, this function ensures we fallback to these folders properly.
Parameters
-
$theme_stylesheet
string Optional -
The stylesheet. Default is to leverage the main theme root.
Default:
null
Return
string[] Folder names used by block themes.
wp_template
stringTheme-relative directory name for block templates.wp_template_part
stringTheme-relative directory name for block template parts.
Source
File: wp-includes/block-template-utils.php
.
View all references
function get_block_theme_folders( $theme_stylesheet = null ) {
$theme_name = null === $theme_stylesheet ? get_stylesheet() : $theme_stylesheet;
$root_dir = get_theme_root( $theme_name );
$theme_dir = "$root_dir/$theme_name";
if ( file_exists( $theme_dir . '/block-templates' ) || file_exists( $theme_dir . '/block-template-parts' ) ) {
return array(
'wp_template' => 'block-templates',
'wp_template_part' => 'block-template-parts',
);
}
return array(
'wp_template' => 'templates',
'wp_template_part' => 'parts',
);
}
Changelog
Version | Description |
---|---|
5.9.0 | Introduced. |