ตรรกะหน้าแรกเป็นหนึ่งในคุณสมบัติที่สับสนที่สุดใน WordPress และยากที่จะอธิบายและสรุปได้เป็นพิเศษ ตามที่ระบุไว้ในความคิดเห็นในขณะที่กลับฉันเผาจำนวนไม่บริสุทธิ์เวลาในการรวบรวมตรรกะหน้าโกงแผ่นสำหรับมัน
แต่เนื่องจากนี่เป็นกระทู้ยอดนิยมให้ฉันพยายามตอบคำถามเฉพาะที่คุณมี
ความแตกต่างระหว่างhome.phpและindex.phpคืออะไร
home.phpเป็นเทมเพลตสำหรับดัชนีโพสต์ (ที่เก็บถาวรของชนิดโพสต์ดั้งเดิมซึ่งเป็นกรณีพิเศษใน WP) WP จะพยายามค้นหาดัชนีของโพสต์ไม่ว่าจะแสดงที่รูทของเว็บไซต์หรือที่หน้าโพสต์เฉพาะ
index.phpคือ catch - เทมเพลตทั้งหมด เป็นตัวเลือกสุดท้ายในลำดับชั้นของเทมเพลตทั้งหมดและจะถูกเลือกเมื่อไม่มีสิ่งใดเหมาะสมสำหรับทั้งมุมมองที่เก็บถาวรและมุมมองเอกพจน์
ดัชนีโพสต์เท่านั้นที่สามารถใช้home.phpแต่ทุกบริบทอื่น ๆ index.phpอาจและจะใช้
อะไรเป็นเงื่อนไขที่เหมาะที่จะใช้home.phpมากกว่าindex.php
คุณใช้home.phpกำหนดดัชนีโพสต์เอง
คุณใช้index.phpเพื่อให้แม่แบบทั่วไปมากที่สุดในชุดรูปแบบของคุณเหมาะสำหรับการแสดงอะไร
บางธีมเลือกที่จะว่างเปล่าindex.phpและให้แน่ใจว่ามีเทมเพลตเฉพาะสำหรับกรณีที่เป็นไปได้ทั้งหมดดังนั้นจึงไม่จำเป็นต้องใช้
เงื่อนไขที่เหมาะสมที่สุดในการใช้front-page.phpคืออะไร
front-page.php ใช้สำหรับดัชนีโพสต์ที่รูทหรือหน้าคงที่หากเปิดใช้งาน
เป็นเทมเพลตที่มีลำดับความสำคัญสูงดังนั้นหากธีมมีคุณไม่สามารถเลือกเทมเพลตเองสำหรับหน้าคงที่ได้ ด้วยเหตุนี้จึงแทบไม่เคยรวมอยู่ในธีมที่เผยแพร่สู่สาธารณะ (ซึ่งถูกต้อง)
การใช้งานที่ดีที่สุดสำหรับมันอยู่ในโครงการส่วนตัวเนื่องจากง่ายต่อการกำหนดค่ามากกว่าแม่แบบหน้า
เมื่อฉันใช้งานfront-page.phpอะไรที่เฉพาะเจาะจงindex.phpสำหรับฉัน
index.phpคือยังคงจับแม่แบบทั้งหมดสำหรับกรณีอื่น ๆ ทั้งหมด
ถ้าคุณใช้หน้าคงที่ (ซึ่งfront-page.phpจะนำไปใช้) แล้วหน้าโพสต์ของคุณจะพยายามที่จะใช้แล้วhome.phpindex.php