2013-05-03 56 views
3

我使用wordpress,並希望將兩行代碼添加到一個頁面的標題中。Wordpress-如何只爲特定頁面的標題插入代碼?

問題是,header.php將改變所有網站的標題,我希望它只改變一個特定頁面的標題。

我想這樣做的唯一的事情就是增加這個1號線:

<META name="robots" content="noindex, nofollow"/> 
+0

WP全局變量'$ pagename'應該可用。 '$ pagename'在函數'get_page_template()'內部的'wp-includes/theme.php'文件中定義,當然在頁面主題文件被解析之前調用它,所以它在任何點都可用在您的頁面模板中。 – naththedeveloper 2013-05-03 07:07:01

回答

1

只是修正FDL的答案,可以使用這樣的:

global $post; 
if($post->post_type == 'page' && $post->ID == 'yourid'){ 
    echo '<meta name="robots" content="noindex, nofollow" />'; 
} 
6

你只需添加您的pageid你這樣的頭文件

global $post; 
if($post->post_type == 'page' && $post->ID == 'whatever page id'){ 
    echo '<meta name="robots" content="noindex, nofollow" />'; 
} 

它只會顯示你想要的特定頁面上的元。

假設我們只添加pageid =='5',它將在頁面ID ='5'中顯示元標記。

7

如果你想爲某個頁面使用不同的頭文件,你需要從FTP下載你的header.php文件,將它重命名爲header-new.php(用你想要的替換「new」),重新上傳頭文件-new.php到您原始標題的相同目錄。 - 在頁面模板,你希望新的頭出現在

取代:

<?php get_header(); ?> 

<?php get_header('new'); ?> 

,現在你的新的頭將顯示只在特定的頁面模板

0

Custom Fields是一種很好的方式,可讓您獲得頁面特定的元數據,您可以在模板文件中創建邏輯。 Codex鏈接提供了很好的例子。

0
<?php global $post; ?> 
<?php if(is_page('pagename')){ ?> 
     <meta name="robots" content="noindex, nofollow" /> 
<?php } ?> 
0

有一個插件可以完成所要求的事情。
HiFi (Head Injection, Foot Injection)

有一個通知,「這個插件還沒有超過2年....更新」,但我只是測試它在WP 3.5.2 - 它的工作原理。

-1
<?php if (is_home()) { ?> 
    <META name="robots" content="noindex, nofollow"/> 
<?php } ?> 

這段代碼把元只爲主頁,你可以使用is_single,is_archive,is_404等

0

更簡單的,非編碼解決方案,改變了機器人在每個頁面的基礎meta標籤是通過使用Yoast SEO插件。 https://yoast.com/wordpress/plugins/seo/ 您可以將個別頁面(例如表單感謝頁面)設置爲noindex,如果您喜歡,也可以設置爲nofollow。如果您還使用Yoast生成站點地圖,那麼您可以在不對其進行索引的同時將該頁面從站點地圖中排除,這將防止Search Console中的錯誤。

如果你想有一些其他的標籤或深奧的語法增加了,那麼你可以使用逐頁添加到文檔頭插件 https://wordpress.org/plugins/per-page-add-to/ 這將讓你成爲關於哪個網頁,其代碼非常精細的能力。

相關問題