2016-09-19 105 views
1

我正在嘗試爲使用KnowledgePress主題的Wordpress網站創建自定義主頁。我不是一名PHP或Wordpress開發人員,但我花了數小時研究此問題。無論我嘗試什麼,網頁最終都會從網站的自定義主題中吸收各種主題元素。在沒有主題元素的Wordpress中創建自定義頁面

我試過創建一個空模板,然後從我的自定義頁面使用此模板。模板:

<?php 
/** 
    Template Name: Empty Template 
*/ 
?> 
<html> 
<head> 
<style type="text/css"> 
body { background-color: #cccccc; } 
#page-content { width: 800px; margin: 20px auto; } 
</style> 
<title><?php wp_title('|', true, 'right'); bloginfo('url'); ?></title> 
</head> 
<body> 
<div id="page-content"> 
</div> 
</body> 
</html> 

結果仍顯示頁面內容包裹在網站主題中。

我試過在主題根中創建一個自定義page-pagename.php文件,例如page-welcome.php:

<html> 
<head> 
</head> 
<body> 
<h1>MySite.com</h1> 
</body> 
</html> 

內容仍然包裹在網站的外觀和感覺。模板包括:

  • base.php
  • 的index.php
  • page.php文件

如果這是有幫助的。我有FTP訪問權限,目前正在使用自定義頁面進行測試,但最終會希望爲此網站的主頁工作。但是,到目前爲止,我沒有做到讓我擺脫Wordpress主題。

回答

0

編輯在網站根目錄的.htaccess文件。添加重寫規則以指向靜態HTML文件。將規則配置爲僅適用於主頁(或者您想用自己的自定義HTML而不是WP主題替換的任何靜態URL)。例如htaccess的改性前的文件:

# BEGIN WordPress 
<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/
RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
</IfModule> 

# END WordPress 

修飾後:

# BEGIN WordPress 
<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/
RewriteRule ^$ somefile.html [L] 
RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
</IfModule> 

# END WordPress 

的[L]告訴重寫發動機給定的規則是,應評估的最後一個規則(如果它匹配)。更多關於重寫規則在這裏:Rewrite Tips and Tricks

0

FTP到你的WordPress站點,轉到你當前的主題或子主題文件夾。你可以在/ wp-content/themes /目錄下找到它。保存所有主題的副本,然後刪除原件。

+0

這應該如何幫助,究竟是什麼?我不想打破整個網站。我只想添加一個不使用主題的自定義頁面。 – ssmith

1

您的模板通常作爲「內容部分」包含在page.phpsingle.php中,其中還包括主題的頁眉,頁腳和側欄。這就是爲什麼你總是看到他們。

爲了避免這種情況,您必須爲您使用的主題(即主題目錄中的自己的文件夾)創建一個「孩子主題」,並將自己的版本/ /添加到您想要的所有文件中更改 - 通常至少爲style.cssfunctions.php

所有這些在這裏很短的帖子都不能解釋,你真的必須進入WordPress的主題開發,至少如何創建子主題和自己的頁面模板(你需要知道一些PHP和一些WordPress的API知識)。

加成後的註解:

延伸的實際主題的問題是:一旦主題被更新(這通常發生在商業主題),所有的更改都將丟失。所以最好設置一個兒童主題。但這並不複雜,因爲您只需創建與主題不同的幾個文件 - 其他所有內容都是以一種層疊方式繼承的。所以基本上你需要文件style.css,通常(不總是)functions.php和你想添加的頁面模板文件(可以任意命名,但必須包含某些元信息作爲註釋被識別爲模板)。 style.css還需要包含有關主要主題(Google ...)被WP識別爲兒童主題的信息,但它只需包含您需要的附加 CSS規則 - 其他則從原始主題獲取,作爲所有其他必要的東西。

未來除了COMMENT

後,通常你首先激活子主題在WP後臺,然後你去頁>新的一頁。在那裏(在右側邊欄)你選擇你的頁面模板(它必須在子主題目錄中),在WP編輯器中插入你的內容並點擊「發佈」。然而,你的模板必須包含這樣的事情,包括你剛纔插入WP編輯器(內容被保存在數據庫中)內容:

<?php while (have_posts()) : the_post(); ?> 
    <?php the_content(); ?> 
<?php endwhile; ?> 

你也可以把「固定內容」右側插入模板,但無論如何,您必須通過WP管理界面創建一個「新頁面」,才能將其集成到您的網站中。

看一看(當然,引人矚目的...)在:https://developer.wordpress.org/themes/

+0

我還沒有意識到添加一個自定義HTML頁面到網站需要深入瞭解Wordpress主題和主題創作。感謝您的幫助。 – ssmith

+0

如果我確實創建了我自己的自定義兒童主題版本的knowledgepress,我必須切換整個網站才能使用這個新主題,對吧?我不能只有我想要使用的一個自定義頁面選擇這個新的兒童主題? – ssmith

+0

請注意除了我的回答 – Johannes