2016-08-04 38 views
-1

因此,我有一個網站有多個網頁,它們具有相同的頁眉和頁腳,我正在更改的唯一內容就是內容。我知道我可以使用PHP和使用包括,但我試圖避免這一點。具有常見導航和頁腳的多個網頁

是否有另一種方法來插入頁眉和頁腳而不使用PHP?

+0

Javascript適合你嗎?因爲那時我有一個解決方案。 –

+0

服務器端包含在這裏是正確的選擇 - 你試圖避免這種情況的任何原因? – technophobia

回答

-1

要做到這一點的最佳方法是使用方法require_once(),這是一種簡單的方法,但工作很好,可以做到這一點。

方面的。

+0

什麼是require_once。目前還不清楚你在回答什麼。 –

+1

OP希望避免'php'。 **我知道我可以使用php並使用include,但我試圖避免這種情況。** – jonju

0

目前還沒有一種方法可以直接在HTML中執行此操作(即將提供HTML5導入功能,但當前支持很糟糕),因此您需要使用某種模板系統來實現此目的。這裏有很多選項,例如把手,液體或翡翠。他們將允許您編寫partials幷包含它們,然後將它們編譯爲單獨的html文件,以便使用gulp,grunt或其他任務運行器進行部署。您也可以查看靜態站點生成器,例如Jekyll,middleman或assemble.io,因爲這些是他們在啓動站點時無需運行服務器端語言的功能。

0

這裏是一個JS的方式來做到這一點:(直接從該answer採取代碼):

創建一個JavaScript文件:footerheader.js 給它的內容:

document.getElementById("myHead").innerHTML = 
    "<span id='headerText'>Title</span>" 
    + "<span id='headerSubtext'>Subtitle</span>"; 

document.getElementById("myFooter").innerHTML = 
    "<p id='copyright'>Copyright &copy; " + new Date().getFullYear() + " You. All" 
    + " rights reserved.</p>" 
    + "<p id='credits'>Layout by You</p>" 
    + "<p id='contact'><a href='mailto:[email protected]'>Contact Us</a>/" 
    + "<a href='mailto:[email protected]'>Report a problem.</a></p>"; 

所有這些代碼,你可以用你自己的名字和ID來替換。

那麼你的HTML:

<header id="myHead"></header> 
<h3>content</h3> 
<footer id="myFooter"></footer> 

<script src="footerheader.js"></script> 

憑藉在所有網頁相同ids,幷包括相同的腳本,就可以實現這一點。