ฉันเกรงว่าจะไม่. หากใน codex ไม่ใช่สิ่งที่คุณอยากรู้ลองไปตามลิงค์ไปยังแหล่งที่มาและดูรหัสและลองจัดการมันดู
ฉันได้ดูและฟังก์ชั่น get_template_part ถูกกำหนดไว้ด้านล่าง:
function get_template_part( $slug, $name = null ) {
do_action( "get_template_part_{$slug}", $slug, $name );
$templates = array();
if ( isset($name) )
$templates[] = "{$slug}-{$name}.php";
$templates[] = "{$slug}.php";
locate_template($templates, true, false);
}
จากนี้คุณสามารถอ่านได้ว่าฟังก์ชั่น get_template_part เพียงแค่สร้างชื่อไฟล์ php ตั้งใจและฟังก์ชั่นการโทร สิ่งนี้ไม่มีประโยชน์ดังนั้นฉันจึงได้ดูที่ฟังก์ชัน find_template ด้วย:
function locate_template($template_names, $load = false, $require_once = true ) {
$located = '';
foreach ( (array) $template_names as $template_name ) {
if ( !$template_name )
continue;
if ( file_exists(STYLESHEETPATH . '/' . $template_name)) {
$located = STYLESHEETPATH . '/' . $template_name;
break;
} else if ( file_exists(TEMPLATEPATH . '/' . $template_name) ) {
$located = TEMPLATEPATH . '/' . $template_name;
break;
}
}
if ( $load && '' != $located )
load_template( $located, $require_once );
return $located;
}
รับค้นหาเทมเพลตค้นหาไฟล์ php ที่เรียกจาก get_template_part แต่คุณสามารถโทรหา locate_template ได้โดยตรงจากโค้ดของคุณ และสิ่งนี้มีประโยชน์
ลองใช้รหัสนี้แทนฟังก์ชั่น get_template_part ('loop-sigle.php') (ไฟล์ของคุณอยู่ใน mydir ภายในธีมของคุณ):
locate_template( 'mydir/loop-single.php', true, true );