Answers:
如果查看template-loader.php
,我们可以看到paged.php
将要加载的条件:
if ( defined('WP_USE_THEMES') && WP_USE_THEMES ) :
$template = false;
if ( is_404() && $template = get_404_template() ) :
elseif ( is_search() && $template = get_search_template() ) :
elseif ( is_tax() && $template = get_taxonomy_template() ) :
elseif ( is_front_page() && $template = get_front_page_template() ) :
elseif ( is_home() && $template = get_home_template() ) :
elseif ( is_attachment() && $template = get_attachment_template() ) :
remove_filter('the_content', 'prepend_attachment');
elseif ( is_single() && $template = get_single_template() ) :
elseif ( is_page() && $template = get_page_template() ) :
elseif ( is_category() && $template = get_category_template() ) :
elseif ( is_tag() && $template = get_tag_template() ) :
elseif ( is_author() && $template = get_author_template() ) :
elseif ( is_date() && $template = get_date_template() ) :
elseif ( is_archive() && $template = get_archive_template() ) :
elseif ( is_comments_popup() && $template = get_comments_popup_template() ) :
elseif ( is_paged() && $template = get_paged_template() ) :
else :
$template = get_index_template();
endif;
if ( $template = apply_filters( 'template_include', $template ) )
include( $template );
return;
endif;
最后elseif
是分页模板(如果存在)的加载位置:
elseif ( is_paged() && $template = get_paged_template() ) :
这意味着以上所有检查都必须paged.php
为要加载的模板,查询is_paged
和所有其他特定于内容的模板返回false 。
is_paged()
意思,但是,如果还有其他更具体的模板可用,则该模板将在before之前调用paged.php
。例如,如果您的主题有archive.php
模板,paged.php
则archive.php
无论页面号如何,都绝不会将其用于使用的任何类型的内容。
请注意,自WP 4.7起,paged.php已从模板加载器中完全删除,因此也删除了模板层次结构。