mirror of
git://develop.git.wordpress.org/
synced 2025-04-11 15:42:03 +02:00
Editor: fix duplication in templates list.
Excludes parent template when a child template is defined during template retrieval. Props oandregal, mukesh27, flixos90, bgardner, peterwilsoncc. Reviewed by peterwilsoncc. Merges [56329] to the 6.3 branch. Fixes #57756. git-svn-id: https://develop.svn.wordpress.org/branches/6.3@56330 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
parent
adb69ff250
commit
be0255b6ac
@ -360,6 +360,14 @@ function _get_block_templates_files( $template_type, $query = array() ) {
|
||||
continue;
|
||||
}
|
||||
|
||||
/*
|
||||
* The child theme items (stylesheet) are processed before the parent theme's (template).
|
||||
* If a child theme defines a template, prevent the parent template from being added to the list as well.
|
||||
*/
|
||||
if ( isset( $template_files[ $template_slug ] ) ) {
|
||||
continue;
|
||||
}
|
||||
|
||||
$new_template_item = array(
|
||||
'slug' => $template_slug,
|
||||
'path' => $template_file,
|
||||
@ -370,7 +378,7 @@ function _get_block_templates_files( $template_type, $query = array() ) {
|
||||
if ( 'wp_template_part' === $template_type ) {
|
||||
$candidate = _add_block_template_part_area_info( $new_template_item );
|
||||
if ( ! isset( $area ) || ( isset( $area ) && $area === $candidate['area'] ) ) {
|
||||
$template_files[] = $candidate;
|
||||
$template_files[ $template_slug ] = $candidate;
|
||||
}
|
||||
}
|
||||
|
||||
@ -380,13 +388,13 @@ function _get_block_templates_files( $template_type, $query = array() ) {
|
||||
! $post_type ||
|
||||
( $post_type && isset( $candidate['postTypes'] ) && in_array( $post_type, $candidate['postTypes'], true ) )
|
||||
) {
|
||||
$template_files[] = $candidate;
|
||||
$template_files[ $template_slug ] = $candidate;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return $template_files;
|
||||
return array_values( $template_files );
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
x
Reference in New Issue
Block a user