_build_block_template_result_from_file()
Створює уніфікований об’єкт шаблону, який базується на темі файлу.
Ця функція вважається внутрішньою для використання самим ядром . Не рекомендується використовувати цю функцію у своєму коді.
Хуків немає.
Повертає
WP_Block_Template
. Template.
Використання
_build_block_template_result_from_file ( $template_file , $template_type );
- $template_file (масив) (обов’язковий)
- Тема файлу.
- $template_type (рядок) (обов’язковий)
- ‘wp_template’ або ‘wp_template_part’ .
список змін
З версії 5.9.0 | Введено. |
Код _build_block_template_result_from_file() build block template result from file WP 6.2
function _build_block_template_result_from_file ( $template_file , $template_type ) {
$default_template_types = get_default_block_template_types ();
$template_content = file_get_contents ( $template_file [ 'path' ]);
$ theme = get_stylesheet ();
$template = новий WP_Block_Template ();
$template ->id = $theme . '//' . $template_file [ 'slug' ];
$template ->theme = $theme ;
$template ->content = _inject_theme_attribute_in_block_template_content ( $template_content );
$template -> slug = $ template_file [ 'slug' ];
$template ->source = 'theme' ;
$template ->type = $template_type ;
$template->title=! empty ( $template_file [ 'title' ] ) ? $template_file [ 'title' ]: $template_file [ 'slug' ];
$template ->status = 'publish' ;
$template ->has_theme_file = true ;
$template ->is_custom = true ;
if ( 'wp_template' === $template_type && isset ( $default_template_types [ $ template_file [ 'slug' ] ] ) ) {
$template ->description = $default_template_types [ $template_file [ 'slug ' ;
$template ->title = $default_template_types [ $template_file [ 'slug' ] ][ 'title' ];
$template ->is_custom = false ;
}
if ( 'wp_template' === $template_type && isset ( $template_file [ 'postTypes' ] ) ) {
$template ->post_types = $template_file [ 'postTypes' ];
}
if ( 'wp_template_part' === $template_type && isset ( $template_file [ 'area' ] ) ) {
$template ->area = $template_file [ 'area' ];
}
return $template ;
}