แยกเนื้อหา html ทั่วไปเพื่อแยกไฟล์เพื่อนำกลับมาใช้ใหม่

ฉันได้สร้างเว็บไซต์ (โดยใช้หน้า GitHub) ซึ่งมีหน้าย่อยจำนวนมาก เกือบทุกหน้ามีเนื้อหาเดียวกันดังต่อไปนี้ เช่น ส่วนท้ายเช่นนี้:

<footer id="content-info" class="container" role="contentinfo">
    ...
</footer>

คำถามของฉันคือ จะแยกส่วนเดียวกันที่แชร์นี้ออกเป็นไฟล์แยกต่างหากเพื่อนำกลับมาใช้ใหม่ได้อย่างไร จากนั้นฉันก็สามารถรวมไฟล์นี้ทุกที่ที่ฉันต้องการมีส่วนท้ายกระดาษได้ หากเป็นไปได้ ฉันสามารถแก้ไขส่วนนี้ได้อย่างง่ายดายเพียงครั้งเดียว และทุกหน้าที่มีส่วนนั้นจะเปลี่ยนโดยอัตโนมัติ


person herohuyongtao    schedule 15.07.2014    source แหล่งที่มา


คำตอบ (3)


GitHub Pages รองรับ Jekyll ซึ่งเป็นเครื่องมือสร้างไซต์แบบคงที่ Jekyll ใช้เทมเพลต Liquid ใต้ฝากระโปรง คุณควรจะสามารถใช้ประโยชน์จากเทมเพลตได้แม้ว่าจะไม่มีการสร้างไซต์แบบคงที่ก็ตาม

นี่คือข้อมูลเพิ่มเติมเกี่ยวกับเจคิลล์: http://jekyllrb.com/docs/home/

หากต้องการให้ Jekyll ประมวลผลด้วย GitHub Pages คุณอาจต้องเพิ่มไฟล์ _config.yml ข้อมูลเพิ่มเติมเกี่ยวกับเรื่องนี้ที่นี่: http://jekyllrb.com/docs/configuration/

จากนั้น เมื่อ Jekyll ประมวลผลไฟล์ .html ของคุณ คุณจะสามารถใช้ไวยากรณ์เทมเพลตง่ายๆ เพื่อรวมเนื้อหาจากไฟล์อื่นๆ ได้

ตัวอย่าง:

<!-- html here -->
{% include footer.html %}
<!-- more html here -->

ซึ่งจะรวมเนื้อหาของ _includes/footer.html โดยค่าเริ่มต้น ข้อมูลเพิ่มเติมเกี่ยวกับเทมเพลตรวมอยู่ที่นี่: http://jekyllrb.com/docs/templates/#includes

ฉันหวังว่ามันจะช่วยได้!

person Will Klein    schedule 15.07.2014
comment
ขอบคุณสำหรับการแก้ไข @herohuyontao! ฉันมักจะจัดรูปแบบอะไรแบบนั้น ขอบคุณมาก! - person Will Klein; 17.07.2014

คุณสามารถคัดลอกเนื้อหาของ div ไปยังไฟล์ php หรือ html แล้วเรียกใช้จากแต่ละหน้าโดยใช้

<?php include 'footer.php'; ?>

ด้วยวิธีนี้เมื่อคุณเปลี่ยน footer.php มันจะอัปเดตทั่วทั้งไซต์

person GazEcc    schedule 15.07.2014
comment
ตามที่กล่าวไว้ที่นี่ GitHub ไม่รองรับ PHP มีความคิดที่จะแก้ไขบ้างไหม? - person herohuyongtao; 15.07.2014

คุณประหยัดเงินได้มาก นำข้อมูลโค้ดที่คุณต้องการใช้ซ้ำและบันทึกเป็นไฟล์แยกกัน

จากนั้นใช้

<?php include_once ("file location/filename.extension"); ?> 

เพื่อรวมไฟล์นั้น :D

##### html file
<html>
<head>
<title>Title</title>
</head>

<body>
<p>content here</p>
<?php include_once ("file location/filename.extension"); ?>
</body>
</html>
##### include file
<p>copyright by me<p>
person lil_bugga    schedule 15.07.2014
comment
ขอบคุณ. แต่มันไม่ได้ผลสำหรับฉัน เกี่ยวข้องกับหน้า GitHub ที่ฉันใช้สร้างเว็บไซต์หรือไม่ อาจจะไม่รองรับ PHP? - person herohuyongtao; 15.07.2014
comment
คุณได้บันทึกหน้าหลักเป็น html หรือ php แล้วหรือยัง อาจเป็นเพียงเรื่องของรูปแบบไฟล์ที่ไม่ถูกต้อง เว้นแต่จะระบุไว้ด้วยนามสกุล .php ฉันไม่คิดว่ามันจะทำงานได้ - person lil_bugga; 15.07.2014
comment
หน้าจะถูกบันทึกเป็น HTML GitHub ไม่รองรับ PHP ตามที่กล่าวไว้ที่นี่ ข่าวเศร้า :( มีความคิดที่จะแก้ไขบ้างไหม? - person herohuyongtao; 15.07.2014
comment
ดูเหมือนว่าคุณไม่มีตัวเลือกมากมายเหลือให้คุณ แนะนำให้ดูเฟรมครับ ฉันเคยสร้างไซต์ที่มีเฟรมและแต่ละเฟรมมีเพจแยกต่างหากที่ควบคุมมันได้อย่างมีประสิทธิภาพ ฉันคิดว่าเฟรมถูกแทนที่ด้วย IFrames ดังนั้นอาจคุ้มค่าที่จะดูมัน - person lil_bugga; 15.07.2014
comment
ขอบคุณ. ฉันจะตรวจสอบเรื่องนั้น - person herohuyongtao; 15.07.2014
comment
คุณประสบความสำเร็จกับเฟรมหรือ Iframes หรือไม่? - person lil_bugga; 17.07.2014