对SEO有一定了解的同学都知道网页中的description和keywords标签对SEO有一定的作用,但是有些wordpress主题缺少了这两个标签,有些同学就直接试用All in One SEO插件来解决这个问题,不过空谷认为凡是能够用代码解决的问题尽量使用代码,插件使用过多会影响网站的速度,下面为大家分享一下网页description和keywords调用代码。
以下代码放在header.php的之间,最后用UTF-8编码另存为,否则中文会乱码。
<?php if (is_home() || is_front_page()){ // 判断是否是首页 $description = “模板下载吧是一个提供wordpress主题,wordpress模板下载,企业与个人博客wordpress建设服务的网站。高效、专业、符合SEO优化wordpress建站,首选模板下载吧wordpress主题,大气,简洁,清新。”; $keywords = “wordpress主题,企业主题,个人博客主题,外贸主题”; // 引号里填你的描述和关键词即可 }elseif (is_category()){ $description = strip_tags(trim(category_description())); $keywords = single_cat_title('', false); // 判断是否是分类页面 }elseif (is_tag()){ $description = sprintf( __( '与标签 %s 相关联的文章列表'), single_tag_title('', false)); $keywords = single_tag_title('', false); // 判断是否是tag标签页面 }elseif (is_single()){ $keywords = get_post_meta($post->ID, 'keywords', true); if(!$keywords){ $keywords = ""; $tags = wp_get_post_tags($post->ID); foreach ($tags as $tag ) { if($tag != end($tags)){ $keywords = $keywords . $tag->name . ","; }else{ $keywords = $keywords . $tag->name; } } } $description = get_post_meta($post->ID, 'description', true); if(!$description){ if($post->post_excerpt){ $description = $post->post_excerpt; }else{ $description = mb_strimwidth(strip_tags($post->post_content),0,120,""); } } // 关键词读取tag里面的关键词或者自定义的关键词,描述读取自定义的或者文章中的120是个字符 }elseif(is_page()){ $keywords = get_post_meta($post->ID, "keywords", true); $description = get_post_meta($post->ID, "description", true); } // 判断是否是单页面 ?> <meta name="keywords" content="<?php echo $keywords ?>" /> <meta name="description" content="<?php echo $description?>" />
判断语句(is_home() || is_front_page())的使用方法:
一般而言,在WordPress进行是否首页的判断使用的是is_home(),从而进行首页的一些相关设定,但是有些特殊的情况下,该例是行不通的。
当默认的首页不是index.php的时候,比如说在后台指定了一个页面。在这种情况下is_home()就会失效。也就是说这种情况下就不能用is_home()来进行判断了,那么这时应该怎么办呢?
在这个时候就要用到is_front_page()这个判断语句了,它的作用是判断当前页是否指定的首页。
因此,一般要进行对是否首页的判断得同时用到这两个语句,
category_description()函数获取分类目录中的图像描述内容。
single_cat_title(”, false)函数获取分类目录标题做关键词。