get_template_hierarchy
函数
get_template_hierarchy ( $slug, $is_custom = false, $template_prefix = '' )
- 参数
-
-
(string)
$slug
The template slug to be created.- Required: 是
-
(bool)
$is_custom
Optional. Indicates if a template is custom or part of the template hierarchy. Default false.- Required: 否
- Default: false
-
(string)
$template_prefix
Optional. The template prefix for the created template. Used to extract the main template type, e.g. in `taxonomy-books` the `taxonomy` is extracted. Default empty string.- Required: 否
- Default: (empty)
-
(string)
- 返回值
-
- (string[]) The template hierarchy.
- 定义位置
-
-
wp-includes/block-template-utils.php
, line 1310
-
wp-includes/block-template-utils.php
- 引入
- 6.1.0
- 弃用
- –
Gets the template hierarchy for the given template slug to be created.
Note: Always add `index` as the last fallback template.
function get_template_hierarchy( $slug, $is_custom = false, $template_prefix = '' ) { if ( 'index' === $slug ) { return array( 'index' ); } if ( $is_custom ) { return array( 'page', 'singular', 'index' ); } if ( 'front-page' === $slug ) { return array( 'front-page', 'home', 'index' ); } $template_hierarchy = array( $slug ); // Most default templates don't have `$template_prefix` assigned. if ( $template_prefix ) { list( $type ) = explode( '-', $template_prefix ); // These checks are needed because the `$slug` above is always added. if ( ! in_array( $template_prefix, array( $slug, $type ), true ) ) { $template_hierarchy[] = $template_prefix; } if ( $slug !== $type ) { $template_hierarchy[] = $type; } } // Handle `archive` template. if ( str_starts_with( $slug, 'author' ) || str_starts_with( $slug, 'taxonomy' ) || str_starts_with( $slug, 'category' ) || str_starts_with( $slug, 'tag' ) || 'date' === $slug ) { $template_hierarchy[] = 'archive'; } // Handle `single` template. if ( 'attachment' === $slug ) { $template_hierarchy[] = 'single'; } // Handle `singular` template. if ( str_starts_with( $slug, 'single' ) || str_starts_with( $slug, 'page' ) || 'attachment' === $slug ) { $template_hierarchy[] = 'singular'; } $template_hierarchy[] = 'index'; return $template_hierarchy; };
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。