HotNews Pro主题本身已集成SEO优化代码,所以不需要安装类似All in One SEO Pack的插件,不过主题集成的SEO代码并没有为分类列表及页面文件提供描述(description)及关键字(keywords),有童鞋问如何加上此功能,所以简单修改一下SEO代码,补上此功能,就是不知道加上这个有什么实际意义。具体方法很简单:
打开HotNews Pro主题includes目录的seo.php模版文件,用下面代码替换其中的所有。
- <?php if ( is_home() ) { ?><title><?php bloginfo('name'); ?> | <?php bloginfo('description'); ?></title><?php } ?>
- <?php if ( is_search() ) { ?><title>搜索结果 | <?php bloginfo('name'); ?></title><?php } ?>
- <?php if ( is_single() ) { ?><title><?php echo trim(wp_title('',0)); ?> | <?php bloginfo('name'); ?></title><?php } ?>
- <?php if ( is_page() ) { ?><title><?php echo trim(wp_title('',0)); ?> | <?php bloginfo('name'); ?></title><?php } ?>
- <?php if ( is_category() ) { ?><title><?php single_cat_title(); ?> | <?php bloginfo('name'); ?></title><?php } ?>
- <?php if ( is_month() ) { ?><title><?php the_time('F'); ?> | <?php bloginfo('name'); ?></title><?php } ?>
- <?php if (function_exists('is_tag')) { if ( is_tag() ) { ?><title><?php single_tag_title("", true); ?> | <?php bloginfo('name'); ?></title><?php } ?> <?php } ?>
- <?php if ( is_author() ) {?><title><?php wp_title('');?>发表的所有文章 | <?php bloginfo('name'); ?></title><?php }?>
- <?php
- if (!function_exists('utf8Substr')) {
- function utf8Substr($str, $from, $len)
- {
- return preg_replace('#^(?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,'.$from.'}'.
- '((?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,'.$len.'}).*#s',
- '$1',$str);
- }
- }
- if ( is_single() ){
- if ($post->post_excerpt) {
- $description = $post->post_excerpt;
- } else {
- if(preg_match('/<p>(.*)<\/p>/iU',trim(strip_tags($post->post_content,"<p>")),$result)){
- $post_content = $result['1'];
- } else {
- $post_content_r = explode("\n",trim(strip_tags($post->post_content)));
- $post_content = $post_content_r['0'];
- }
- $description = utf8Substr($post_content,0,220);
- }
- $keywords = "";
- $tags = wp_get_post_tags($post->ID);
- foreach ($tags as $tag ) {
- $keywords = $keywords . $tag->name . ",";
- }
- }
- ?>
- <?php echo "\n"; ?>
- <?php if ( is_single() ) { ?>
- <meta name="description" content="<?php echo trim($description); ?>" />
- <meta name="keywords" content="<?php echo rtrim($keywords,','); ?>" />
- <?php } ?>
- <?php if ( is_page() ) { ?>
- <meta name="description" content="<?php $description = get_post_meta($post->ID, 'description', true);{echo $description;}?>" />
- <meta name="keywords" content="<?php $keywords = get_post_meta($post->ID, 'keywords', true);{echo $keywords;}?>" />
- <?php } ?>
- <?php if ( is_category() ) { ?>
- <meta name="description" content="<?php echo category_description( $categoryID ); ?>" />
- <?php } ?>
- <?php if ( is_tag() ) { ?>
- <meta name="description" content="<?php echo single_tag_title(); ?>" />
- <?php } ?>
- <?php if ( is_home() ) { ?>
- <meta name="description" content="<?php echo get_option('swt_description'); ?>" />
- <meta name="keywords" content="<?php echo get_option('swt_keywords'); ?>" />
- <?php } ?>
其中:
分类列表页面,直接调用分类描述为该分类的页面描述,无关键字。
标签页面,直接调用标签名称为描述
页面文件,需为该页面分别添加自定义栏目:
名称:description,值为:该页面描述
名称:keywords,值为:该页面关键字
本来也可以自动截取页面文件部分内容为该页面描述,不过原SEO代码是提取标签为关键字,貌似WP并没有为页面文件提供添加标签功能,所以直接使用自定义栏目实现。
具体效果可以通过查看我的最近留言页面源文件
提示:复制上面的代码后需手动删除一下多余的空格,不然查看页面源代码会有大面积的空段,或者直接下载已修改好的seo.php模版文件,替换主题原文件。
HotNews Pro 2.7版发布也有段时间了,之后断断续续写了一些修改优化的文章,也到了该升级主题的时机,希望大家提出优化合理化建议,让升级后的主题更加完美。
本站文章大部分为原创,用于个人学习记录,可能对您有所帮助,仅供参考!

我的微信
微信号已复制
版权声明
本站原创文章转载请注明文章出处及链接,谢谢合作!




