locate_template() 用來檢索存在的優先順序最高的模板文件,還能直接載入模板文件。
locate_template() 函數檢索時,如果有子主題則優先使用子主題的模板,沒有再繼續檢索父主題。
用法
locate_template( $template_names, $load, $<strong>require</strong>_once );
參數
$template_names
(陣列)(必須)要引入的範本檔案名稱(需要副檔名),會根據陣列逐一符合檔案是否存在,越前邊的優先權。
預設值:None
$load
(布林)(可選)如果設定成 True 則直接引入範本檔案。
預設值:False
$require_once
(布林)(可選)如果設定成True 則如果之前引入過這次不再引入(require_once),無論是否引入過都會引入過(require)。
(只有 $load 為 True,此參數才會生效)。
預設值:False
回傳值
(字串)只要有一個指定的範本檔案存在則傳回它的路徑,否則傳回空字串。
例子
if( locate_template( 'content-' . $pageName . '.php' ) !== '' ){ //存在,引入模板文件 get_template_part( 'content', $pageName ); }else{ //不存在,直接显示内容 the_content(); }
其它
此函數位於:wp-includes/template.php
快速檢索模板
get_query_template() 用於快速檢索頁面的模板,而且需要按照預定類型進行快速檢索) 。
它和 locate_template() 的不同在於需要填入頁面的類型,而且會產生 {$type}_template 模板路徑過濾器。
用法
get_query_template( $type, $templates );
參數
$type
(字串)(必須)所要取得的範本檔案的頁面的類型,要填對應範本檔案沒有副檔名的檔案名稱(如 single)。
預設值:None
$templates
(陣列)(可選)備選的範本清單。
預設值:空數組
回傳值
傳回範本檔案的路徑。
例子
如果存在則引入 404 頁面的模板:
if ( '' != get_404_template() ) include( get_404_template() );
其它
此函數位於:wp-includes/template.php
以上就介紹了WordPress中用於檢索模版的相關PHP函數使用解析,包括了require方面的內容,希望對PHP教程有興趣的朋友有所幫助。