3)模板覆盖

子主题的最常见用法是覆盖模板部件。例如,侧边栏,如果我们有一个主题,其中包含以下文件

/themes/template/sidebar.php

<?php
/**
 * The sidebar containing the main widget area.
 *
 * @link https://developer.wordpress.org/themes/basics/template-files/#template-partials
 */ 

if ( ! is_active_sidebar( 'sidebar-1' ) ) {
    return;
}?>
<div id="sidebar" class="widget-area">
    <?php dynamic_sidebar( 'sidebar-1' ); ?>
</div>

我们绝对可以使用以下文件在子主题中添加我们自己的文件(使用第一个示例中的规范)

/themes/child-theme/sidebar.php

<?php
/**
 * The sidebar containing the main widget area.
 */ 

if ( ! is_active_sidebar( 'sidebar-1' ) ) {
    return;
}?>
<div id="my-sidebar" class="my-own-awesome-class widget-area">
    <div class="my-wrapper">
        <?php dynamic_sidebar( 'sidebar-1' ); ?>
    </div>
</div>

现在 my-own-awesome-class子主题中是安全的,并且在任何主题更新时都不会被删除,并且当 WordPress 在同一路径上找到一个模板时,它总是会从子主题中选择一个模板。