คำถามติดแท็ก get-template-part

10
ผ่านตัวแปรไปที่ get_template_part
WP Codex กล่าวว่าการทำเช่นนี้: // You wish to make $my_var available to the template part at `content-part.php` set_query_var( 'my_var', $my_var ); get_template_part( 'content', 'part' ); แต่ฉันจะecho $my_varอยู่ในส่วนของเทมเพลตได้อย่างไร get_query_var($my_var)ไม่ได้ผลสำหรับฉัน ฉันเห็นคำแนะนำมากมายสำหรับใช้locate_templateแทน นั่นเป็นวิธีที่ดีที่สุดที่จะไปไหม?

6
การส่งผ่านตัวแปรผ่าน locate_template
ในขณะที่ฉันมักจะใช้includeหรือเป็นrequireของตัวเองเพื่อบันทึกการบำรุงรักษาโค้ดระยะยาวฉันเริ่มใช้งานget_template_partและการlocate_templateใช้เวิร์ดเพรสในตัวเป็นสิ่งที่ดีที่สุดเสมอ คำถามของฉันคือคุณควรจะสามารถส่งผ่านตัวแปรไปยังผลลัพธ์ของอย่างใดอย่างหนึ่งget_template_partหรือlocate_template? <?php $var = get_option( 'my-custom-option' ); get_template_part( 'custom-template-part' ); ?> ในโค้ดด้านบน$varจะถูกพิมพ์ภายในเทมเพลตที่กำหนดเอง แต่ตัวแปรดูเหมือนจะไม่ทำงาน ฉันทำอะไรบางอย่างขาดหายไปหรือพฤติกรรมนี้เป็นสิ่งที่คาดหวัง ฉันพบว่าพวกเขาไม่ผ่านในตัวอย่างด้านบนหรือเมื่อใช้ locate_template <?php locate_template( 'custom-template-part.php', true ); ?>

3
มีวิธีการใช้ get_template_part () กับโฟลเดอร์หรือไม่?
ฉันสงสัยว่าจะมีวิธีใช้ get_template_part () กับโฟลเดอร์หรือไม่? โฟลเดอร์หลักของฉันมีไฟล์จำนวนมากในขณะนี้เพราะฉันใส่องค์ประกอบที่สามารถใช้งานได้ทั้งหมดไว้ในไฟล์แยกต่างหาก ฉันต้องการวางไว้ในโฟลเดอร์แล้ว ไม่มีข้อมูลเกี่ยวกับสิ่งนั้นใน Codex: http://codex.wordpress.org/Function_Reference/get_template_part

3
วิธีใช้ get_template_part ()
มีใครช่วยอธิบายให้ฉันฟังก์ชั่นนี้ได้ไหม? ฉันรู้ว่ามันทำอะไร แต่เมื่อฉันดูซอร์สโค้ดในเทมเพลต twenty_ten ฉันไม่ทราบว่าจะรวบรวมลูปทั้งหมดใน loop.php เดียว (ฉันเห็นไฟล์นั้น) ดังนั้นตัวอย่างเช่นนามธรรมแยกส่วนทั่วไปของเทมเพลตแล้วนำมาใช้ซ้ำในแม่แบบอื่น ๆ ได้อย่างไร

3
get_template_part กับตะขอแอ็คชั่นในธีม
ดูเหมือนว่าทั้งสองสิ่งนี้เป็นโอกาสของผู้ใช้ในการปรับเปลี่ยนธีมโดยไม่ต้องแก้ไขไฟล์ธีม (ผ่านธีมลูก) คำถามของฉันคือเป็นวิธีหนึ่งที่ต้องการมากกว่าอีกวิธีหนึ่ง เช่นใช้ชุดรูปแบบฉัน workig ในตอนนี้ ฉันพยายามที่จะตัดสินใจว่าจะไปกับส่วนแม่แบบของ hooks <?php get_template_part('before_sitecontainer' ); ?> <div id="sitecontainer" class="sitecontainer" <?php //closed in footer ?>> <?php get_template_part( 'before_topcontainer' ); ?> <div id="topcontainer "> <?php get_template_part( 'before_topedge_navigation' ); ?> <?php get_template_part( 'topedge_navigation' ); ?> <?php get_template_part( 'before_site_header' ); ?> <?php get_template_part( 'site_header' ); ?> <?php get_template_part( …

3
จะรวมไฟล์โดยใช้ get_template_part () ในปลั๊กอินได้อย่างไร?
คำถามง่ายๆอาจเป็นไปได้ แต่ฉันกำลังดิ้นรน ในการพัฒนาชุดรูปแบบฉันทำงานกับget_template_part()หลายครั้งและฉันเข้าใจพื้นฐานของมัน แต่เมื่อฉันพัฒนาปลั๊กอินฉันสงสัยว่ามันใช้เพื่อแสดงข้อผิดพลาด: แจ้งให้ทราบล่วงหน้า: การใช้ STYLESHEETPATH ​​คงไม่ได้กำหนด - สันนิษฐานว่า 'STYLESHEETPATH' ใน...\wp-includes\template.phpบรรทัด 407 และ ประกาศ: ใช้ค่าคงที่ TEMPLATEPATH - สันนิษฐานว่า 'TEMPLATEPATH' ใน...\wp-includes\template.phpบรรทัด 410 Googling ปัญหาพบว่ามีการแก้ไขที่รองรับ: ใช้get_template_part()เป็นปลั๊กอิน - การสนับสนุน WordPress แต่นั่นก็เป็นวิธีแก้ปัญหาที่ยิ่งใหญ่ - ฉันสงสัยมัน ฉันคิดว่าไม่ควรซับซ้อนมาก ฉันตรวจสอบคำตอบ WPSEนี้และพบบรรทัดของรหัสนี้: if ( '' === locate_template( 'loop-mycustomposttype.php', true, false ) ) include( 'loop-mycustomposttype.php' ); ที่ไหนมีinclude()ฟังก์ชั่นPHP ตามความรู้ WordPress …

4
เป็นไปได้ที่จะแทนที่ผลลัพธ์ของ get_template_part ()?
ฉันกำลังทำงานกับธีมลูกฉันไม่ต้องการแทนที่ไฟล์เทมเพลตหลักเพื่อรักษาความเรียบง่ายของธีมลูกรวมทั้งลดจำนวนรหัสและการบำรุงรักษาเมื่อเวลาผ่านไป ในลูปเท็มเพลต index.php ในธีมพาเรนต์ใช้: get_template_part( 'content' ); ซึ่งจะนำมาในcontent.phpฉันต้องการให้มันมีลักษณะเหมือนget_template_part( 'content', get_post_format() );หรือคล้ายกันมากขึ้นเพื่อที่จะนำเทมเพลตต่างๆเช่นcontent-apart.phpเป็นต้นโดยไม่ต้องสร้างindex.phpในธีมลูกเพื่อเขียนทับ ผู้ปกครองสำหรับการเปลี่ยนแปลงบรรทัดเดียว get_template_part() ประกอบด้วย: function get_template_part( $slug, $name = null ) { do_action( "get_template_part_{$slug}", $slug, $name ); $templates = array(); $name = (string) $name; if ( '' !== $name ) $templates[] = "{$slug}-{$name}.php"; $templates[] = "{$slug}.php"; locate_template($templates, true, false); } …

1
เราควรใช้ get_template_part () ในฟังก์ชั่นไฟล์แทน include_once หรือไม่?
ฉันใช้ปลั๊กอินตรวจสอบชุดรูปแบบเพื่อตรวจสอบข้อผิดพลาดและคำแนะนำของฉันฉันใช้ get_template_part () ในไฟล์ชุดรูปแบบเช่น header.php และ index.php แต่ใน functions.php ฉันใช้ include_once () theme- ตรวจสอบไม่ได้ชี้ไปที่สิ่งเหล่านี้ก็ชี้ไปที่ include_once ที่ใช้ในไฟล์ widgets.php ซึ่งรวมอยู่ใน function.php คำถามของฉันคือเราควรใช้ get_template_part () แทนที่จะใช้ include_once () และรวม () หรือเพียงแค่ใช้เพื่อรับมาร์กอัปที่ใช้บ่อยเท่านั้น? ฉันรู้ว่ามันแนะนำให้ใช้เพียง get_template_part () แต่ฉันชอบที่จะปฏิบัติตามคำแนะนำและแนวทางปฏิบัติที่ดีที่สุด ขอบคุณล่วงหน้า.

2
การใช้ WP_Query แบบกำหนดเองพร้อมด้วยวน get_template_part
ฉันมีข้อความค้นหาประเภทโพสต์ที่กำหนดเอง: <?php $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; $books = new WP_Query(array( 'post_type' => 'wiki', 'posts_per_page' => '50', 'paged' => $paged )); ?> และฉันต้องการวนลูปผ่านโพสต์เหล่านี้โดยใช้ loop-books.php: <?php get_template_part( 'loop', 'books' ); ?> ภายใน loop-books.php ฉันมีสิ่งเหล่านี้เหมือนกับ loop.php ปกติฉันเพิ่งเปลี่ยนฟังก์ชั่น have_posts และ the_post เพื่อทำงานกับแบบสอบถาม $ books: <?php if ( $books->have_posts() ) : ?> …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.