你下載的 WordPress 主題提供的keywords和description這兩個meta標簽一般都做得很差,或者根本就不提供,這樣不利于SEO。本文將指導你如何給主頁、分類、頁面以及文章頁添加單獨的Description 和 Keywords。
很多人都在用All in One SEO插件解決這個問題,但是又有很多人說這個插件不好。大不了咱就自己用代碼實現(xiàn)吧。
下面提供露兜博客設置keywords和description的代碼,將以下代碼添加至WordPress主題header.php的<head></head>之間,最后用UTF-8編碼另存為,否則中文會亂碼:
<?php
$description = '';
$keywords = '';
if (is_home() || is_page()) {
// 將以下引號中的內容改成你的主頁description
$description = "露兜博客描述";
// 將以下引號中的內容改成你的主頁keywords
$keywords = "WordPress, 博客, 編程,php,ludou";
}
elseif (is_single()) {
$description1 = get_post_meta($post->ID, "description", true);
$description2 = str_replace("
","",mb_strimwidth(strip_tags($post->post_content), 0, 200, "…", 'utf-8'));
// 填寫自定義字段description時顯示自定義字段的內容,否則使用文章內容前200字作為描述
$description = $description1 ? $description1 : $description2;
// 填寫自定義字段keywords時顯示自定義字段的內容,否則使用文章tags作為關鍵詞
$keywords = get_post_meta($post->ID, "keywords", true);
if($keywords == '') {
$tags = wp_get_post_tags($post->ID);
foreach ($tags as $tag ) {
$keywords = $keywords . $tag->name . ", ";
}
$keywords = rtrim($keywords, ', ');
}
}
elseif (is_category()) {
// 分類的description可以到后臺 - 文章 -分類目錄,修改分類的描述
$description = category_description();
$keywords = single_cat_title('', false);
}
elseif (is_tag()){
// 標簽的description可以到后臺 - 文章 - 標簽,修改標簽的描述
$description = tag_description();
$keywords = single_tag_title('', false);
}
$description = trim(strip_tags($description));
$keywords = trim(strip_tags($keywords));
?>
<meta name="description" content="<?php echo $description; ?>" />
<meta name="keywords" content="<?php echo $keywords; ?>" />
以后在寫博客文章時只需添加兩個自定義欄目(在文章編輯頁面下面,沒有就點擊右上角的顯示選項)即可,第一個自定義欄目名稱為keywords,欄目值寫上這篇文章的關鍵字。接著再添加第二個自定義欄目,自定義欄目名稱為description,后面的欄目值寫上這篇日志的描述。自定義欄目用過一次后,以后再寫日志只需在下拉框中選擇即可。這樣每篇文章都有你自定義的keywords和description了,你完全可以拋棄All in One SEO插件了。
主頁(home)和頁面(page)的description和keywords是用PHP代碼直接寫的,你可將上面的露兜博客的描述改成你的。
分類(category)頁和標簽頁(tag)的description直接取分類或標簽的描述,這個可以根據(jù)需要在WordPress管理后臺更改,keywords則取分類或標簽的名稱。如果你想手動給每個分類定義description和keywords,可以將第27-28行代碼改成:
if (is_category('音樂')) {
$description = '這里填音樂分類的描述';
$keywords = '這里填音樂分類的關鍵字,半角逗號隔開';
}
elseif (is_category('電影')) {
$description = '這里填電影分類的描述';
$keywords = '這里填電影分類的關鍵字,半角逗號隔開';
}
elseif (is_category('戲。)) {
$description = '這里填戲劇分類的描述';
$keywords = '這里填戲劇分類的關鍵字,半角逗號隔開';
}
// 多個分類,復制9-12行代碼,粘貼到13后面行,類似5-12行,改一下分類名稱即可
// 使用UTF-8編碼另存為,替換原來的文件,否則可能會亂碼