網站內部的seo無非就是控制鏈接的nofollow屬性,圖片添加alt標籤,頁面添加關鍵詞(Keywords)頁面描述(Description)與頁面標題(title)這些,有時候單個單個來優化的確很麻煩,而使用數據庫批量操作對於新手又太過於複雜,那麼有什麼辦法讓wordpress網站自動的來進行SEO優化呢?下面小V來教大家如何讓wordpress網站自動做好站內的SEO優化。
首先是網站的Keywords、Description與title的優化,打開網站的header.php文件(PS:有些主題可能不同,但通常情況下是這個文件)加入以下代碼:
<?php if(is_haome()) { ?> <title>首頁標題</title> <meta content="首頁描述" name="Description"/> <meta content="首頁關鍵詞" name="Keywords"/> <?php } ?> <?php if(is_category()) { ?> <title><?php echo trim(wp_title('',0)); ?> | <?php bloginfo(name);?><? $paged = get_query_var('paged'); if ( $paged > 1 ) printf('第 %s 頁 ',$paged); ?></title> <meta content="<?php echo trim(strip_tags(category_description())); ?>" name="Description"/> <meta content="<?php echo single_cat_title(); ?>" name="Keywords"/> <?php } ?> <?php if(is_single()) { ?> <title><?php echo trim(wp_title('',0)); ?> | <?php bloginfo(name);?><? $paged = get_query_var('paged'); if ( $paged > 1 ) printf('第 %s 頁 ',$paged); ?></title> <meta name="description" content="<?php echo mb_strimwidth(strip_tags(apply_filters('the_content', $post->post_content)), 0, 200,"......","utf-8"); ?>" /> <?php $keywords = get_the_tags();$keyword = ''; foreach ($keywords as $value) { $keyword .= ','.$value->name; } ?> <meta name="keywords" content="<?php echo $keyword ;?>" /> <?php }?> <?php if(is_tag()) { ?> <title><?php echo trim(wp_title('',0)); ?>_標籤tag頁<? $paged = get_query_var('paged'); if ( $paged > 1 ) printf('第 %s 頁 ',$paged); ?></title> <meta name="description" content="<?php echo trim(strip_tags(tag_description())); ?><? $paged = get_query_var('paged'); if ( $paged > 1 ) printf('第 %s 頁 ',$paged); ?>" /> <meta name="keywords" content="<?php echo trim(wp_title('',0)); ?>" /> <?php }?>
加上以上代碼後wordpress就會對當前頁面自動添加Keywords、Description與title屬性,接下來是爲文章中的外鏈添加nofollow屬性。
add_filter('the_content', 'auto_nofollow'); function auto_nofollow($content) { return preg_replace_callback('/<a>]+/', 'auto_nofollow_callback', $content); } function auto_nofollow_callback($matches) { $link = $matches[0]; $site_link = get_bloginfo('url'); if (strpos($link, 'rel') === false) { $link = preg_replace("%(S(?!$site_link))%i", 'rel="nofollow" $1', $link); } elseif (preg_match("%S(?!$site_link)%i", $link)) { $link = preg_replace('/rel=S(?!nofollow)S*/i', 'rel="nofollow"', $link); } return $link; }
將以上代碼加入到當前主題的functions.php文件即可實現,換主題的時候記得把這段代碼加到新主題裏噢,不然換主題後文章中的外部鏈接就會變成無nofollow屬性的了。