get_template_part() 函數(shù)用于調(diào)用自定義模板文件,也可以引入自定義名字的文件。使用get_template_part()函數(shù),可以更靈活的控制主題,我覺得get_template_part()函數(shù)最大的好處就是大大的減少了代碼的重寫量。
我們知道,調(diào)用header.php可以用get_header()方法,調(diào)用footer.php可以用get_footer()方法,調(diào)用 sidebar.php可以用get_sidebar()方法,那么,調(diào)用自定義模板文件的時候,我們需要用get_template_part()函 數(shù)。這好比如原生的php也有require及include兩種引入文件方法是一個道理。
為什么要自定義模板文件
比如,分類頁、標簽頁、作者頁、甚至首頁可能都需要用到一段共同的代碼——如以摘要方式輸出文章。那么,我們可以將這段代碼放到content.php中,然后在分類、標簽、和首頁模板文件調(diào)用content.php,以減少代碼重寫量。
get_template_part()函數(shù)的使用很靈活,不僅僅是加載一個模板文件進來,而且還有備用的選項,調(diào)用代碼如下:
語法結構
<?php get_template_part( $slug, $name ); ?>
code:true”>
參數(shù)
$slug (必須) 通用的模板名(字符串)要引入的模板的文件名,不包括后綴名 .php,也就是如果需要引入當前主題根目錄的 content.php 文件 $slug 填寫 ‘content’ 即可。
$name (可選) 指定的模板名(字符串)要引入的模板的文件的副文件名,如果要引入當前主題根目錄的 content-nav.php 文件 $slug 參數(shù)填寫 ‘content’,$name 參數(shù)填寫 ‘nav’。
示例
1、如果content-loop.php存在,則調(diào)用content-loop.php,否則,就調(diào)用content.php
<?php get_template_part( 'content', 'loop' ); ?>
2、引入當前主題根目錄的 tags.php文件:
<?php get_template_part( 'tags' );? ?>
3、引入當前主題 inc 目錄的 myfunctions.php 文件:
<?php get_template_part( 'inc/myfunctions' ); ?>
4、調(diào)用主題partials文件夾下content-page.php
<?php php get_template_part( 'partials/content', 'page' );??>