两种方法给WordPress 增加独立的 keywords 和 description
[重要通告]如您遇疑难杂症,本站支持知识付费业务,扫右边二维码加博主微信,可节省您宝贵时间哦!
keywords 和 description这两个对于站长来说,没啥可说的,对SEO非常好,那下面就来说说如何给WordPress 增加独立的 keywords 和 description,非插件的方法有两种,具体请参阅文章为自己的wordpress来追加哦;
第一种函数实现:
将下面代码复制到function.php文件下,更改首页描述和关键词
// FIN
add_action ( ‘wp_head’, ‘wp_keywords’ ); // 添加关键字
add_action ( ‘wp_head’, ‘wp_description’ ); // 添加页面描述
/** +---------------------------------------------------------- * 站点关键字(https://www.laoliang.net) +---------------------------------------------------------- * @老梁`s Blog +---------------------------------------------------------- */ function wp_keywords() { global $s, $post; $keywords = ''; if (is_single ()) { //如果是文章页,关键词则是:标签+分类ID if (get_the_tags ( $post->ID )) { foreach ( get_the_tags ( $post->ID ) as $tag ) $keywords .= $tag->name . ', '; } foreach ( get_the_category ( $post->ID ) as $category ) $keywords .= $category->cat_name . ', '; $keywords = substr_replace ( $keywords, '', - 2 ); } elseif (is_home ()) { $keywords = '在这里面添加'; //主页关键词设置 } elseif (is_tag ()) { //标签页关键词设置 $keywords = single_tag_title ( '', false ); } elseif (is_category ()) {//分类页关键词设置 $keywords = single_cat_title ( '', false ); } elseif (is_search ()) {//搜索页关键词设置 $keywords = esc_html ( $s, 1 ); } else {//默认页关键词设置 $keywords = trim ( wp_title ( '', false ) ); } if ($keywords) { //输出关键词 echo "<meta name=\"keywords\" content=\"$keywords\" />\n"; } } /** +---------------------------------------------------------- * 站点描述 (https://www.laoliang.net) +---------------------------------------------------------- * @老梁`s Blog +---------------------------------------------------------- */ function wp_description() { global $s, $post; $description = ''; $blog_name = get_bloginfo ( 'name' ); if (is_singular ()) { //文章页如果存在描述字段,则显示描述,否则截取文章内容 if (! empty ( $post->post_excerpt )) { $text = $post->post_excerpt; } else { $text = $post->post_content; } $description = trim ( str_replace ( array ( "\r\n", "\r", "\n", " ", " " ), " ", str_replace ( "\"", "'", strip_tags ( $text ) ) ) ); if (! ($description)) $description = $blog_name . "-" . trim ( wp_title ( '', false ) ); } elseif (is_home ()) {//首页显示描述设置 $description = $blog_name . "-" . get_bloginfo ( 'description' ) .'在这里面添加'; // 首頁要自己加 } elseif (is_tag ()) {//标签页显示描述设置 $description = $blog_name . "有关 '" . single_tag_title ( '', false ) . "' 的文章"; } elseif (is_category ()) {//分类页显示描述设置 $description = $blog_name . "有关 '" . single_cat_title ( '', false ) . "' 的文章"; } elseif (is_archive ()) {//文档页显示描述设置 $description = $blog_name . "在: '" . trim ( wp_title ( '', false ) ) . "' 的文章"; } elseif (is_search ()) {//搜索页显示描述设置 $description = $blog_name . ": '" . esc_html ( $s, 1 ) . "' 的搜索結果"; } else {//默认其他页显示描述设置 $description = $blog_name . "有关 '" . trim ( wp_title ( '', false ) ) . "' 的文章"; } //输出描述 $description = mb_substr ( $description, 0, 220, 'utf-8' ) . '..'; echo "<meta name=\"description\" content=\"$description\" />\n"; }
第二种方式:header.php的<head></head>
将以下代码添加至WordPress主题header.php的<head></head>之间,最后用UTF-8编码另存为,否则中文会乱码:
?php $keywords = '老梁`s Blog'; $description = '老梁`s Blog'; //文章页 if (is_single()){ //自定义栏目添加关键字和描述 $single_keywords = get_post_meta($post->ID, "keywords", true); $description = get_post_meta($post->ID, "description", true); //如果没设置自定义关键字,将使用标签作为关键字 if($single_keywords == ""){ $tags = wp_get_post_tags($post->ID); foreach ($tags as $tag){ $single_keywords = $single_keywords.$tag->name.","; } //去掉关键字前后的空白 $single_keywords = rtrim($single_keywords, ', '); } ///如果文章关键字不为空 if($single_keywords){ $keywords = $single_keywords; } //自定义描述如果为空,将使用文章中的100个字作为描述 if($description == ""){ if($post->post_excerpt){ $description = $post->post_excerpt; }else{ $description = mb_strimwidth(strip_tags(apply_filters('the_content',$post->post_content)),0,200); } } } //页面,添加自定义栏目keywords和description(关键字和描述)。 elseif (is_page()){ $keywords = get_post_meta($post->ID, "keywords", true); $description = get_post_meta($post->ID, "description", true); } //分类页,使用分类名作为关键字,分类描述作为文章描述。 elseif (is_category()){ $keywords = single_cat_title('', false); $description = category_description(); } //标签页,使用标签名作为关键字,标签描述作为文章描述。 elseif (is_tag()){ $keywords = single_tag_title('', false); $description = tag_description(); } //去掉两段空格 $keywords = trim(strip_tags($keywords)); $description = trim(strip_tags($description)); ?><meta name="keywords" content="<?php echo $keywords; ?>" /> <meta name="description" content="<?php echo $description; ?>" />
以上是两种方法给WordPress 增加独立的 keywords 和 description的解说,大家可以自行根据自己的东西来调试哦;两则博主都测试过,有效;切记都要保存为UTF-8编码哈;
问题未解决?付费解决问题加Q或微信 2589053300 (即Q号又微信号)右上方扫一扫可加博主微信
所写所说,是心之所感,思之所悟,行之所得;文当无敷衍,落笔求简洁。 以所舍,求所获;有所依,方所成!
赏
支付宝赞助
微信赞助
免责声明,若由于商用引起版权纠纷,一切责任均由使用者承担。
您必须遵守我们的协议,如您下载该资源,行为将被视为对《免责声明》全部内容的认可->联系老梁投诉资源 LaoLiang.Net部分资源来自互联网收集,仅供用于学习和交流,请勿用于商业用途。如有侵权、不妥之处,请联系站长并出示版权证明以便删除。
敬请谅解! 侵权删帖/违法举报/投稿等事物联系邮箱:service@laoliang.net
意在交流学习,欢迎赞赏评论,如有谬误,请联系指正;转载请注明出处: » 两种方法给WordPress 增加独立的 keywords 和 description