我使用wordpress,並希望將兩行代碼添加到一個頁面的標題中。Wordpress-如何只爲特定頁面的標題插入代碼?
問題是,header.php將改變所有網站的標題,我希望它只改變一個特定頁面的標題。
我想這樣做的唯一的事情就是增加這個1號線:
<META name="robots" content="noindex, nofollow"/>
我使用wordpress,並希望將兩行代碼添加到一個頁面的標題中。Wordpress-如何只爲特定頁面的標題插入代碼?
問題是,header.php將改變所有網站的標題,我希望它只改變一個特定頁面的標題。
我想這樣做的唯一的事情就是增加這個1號線:
<META name="robots" content="noindex, nofollow"/>
只是修正FDL的答案,可以使用這樣的:
global $post;
if($post->post_type == 'page' && $post->ID == 'yourid'){
echo '<meta name="robots" content="noindex, nofollow" />';
}
你只需添加您的pageid你這樣的頭文件
global $post;
if($post->post_type == 'page' && $post->ID == 'whatever page id'){
echo '<meta name="robots" content="noindex, nofollow" />';
}
它只會顯示你想要的特定頁面上的元。
假設我們只添加pageid =='5',它將在頁面ID ='5'中顯示元標記。
如果你想爲某個頁面使用不同的頭文件,你需要從FTP下載你的header.php文件,將它重命名爲header-new.php(用你想要的替換「new」),重新上傳頭文件-new.php到您原始標題的相同目錄。 - 在頁面模板,你希望新的頭出現在
取代:
<?php get_header(); ?>
與
<?php get_header('new'); ?>
,現在你的新的頭將顯示只在特定的頁面模板
Custom Fields是一種很好的方式,可讓您獲得頁面特定的元數據,您可以在模板文件中創建邏輯。 Codex鏈接提供了很好的例子。
<?php global $post; ?>
<?php if(is_page('pagename')){ ?>
<meta name="robots" content="noindex, nofollow" />
<?php } ?>
有一個插件可以完成所要求的事情。
HiFi (Head Injection, Foot Injection)
有一個通知,「這個插件還沒有超過2年....更新」,但我只是測試它在WP 3.5.2 - 它的工作原理。
<?php if (is_home()) { ?>
<META name="robots" content="noindex, nofollow"/>
<?php } ?>
這段代碼把元只爲主頁,你可以使用is_single,is_archive,is_404等
更簡單的,非編碼解決方案,改變了機器人在每個頁面的基礎meta標籤是通過使用Yoast SEO插件。 https://yoast.com/wordpress/plugins/seo/ 您可以將個別頁面(例如表單感謝頁面)設置爲noindex,如果您喜歡,也可以設置爲nofollow。如果您還使用Yoast生成站點地圖,那麼您可以在不對其進行索引的同時將該頁面從站點地圖中排除,這將防止Search Console中的錯誤。
如果你想有一些其他的標籤或深奧的語法增加了,那麼你可以使用逐頁添加到文檔頭插件 https://wordpress.org/plugins/per-page-add-to/ 這將讓你成爲關於哪個網頁,其代碼非常精細的能力。
WP全局變量'$ pagename'應該可用。 '$ pagename'在函數'get_page_template()'內部的'wp-includes/theme.php'文件中定義,當然在頁面主題文件被解析之前調用它,所以它在任何點都可用在您的頁面模板中。 – naththedeveloper 2013-05-03 07:07:01