腾讯云网站解决方案帮您轻松应对建站成本高/网络不稳等常见问题

[SEO] 优化HotNews Pro主题的SEO代码分享

1
回复
1573
查看
[复制链接]

1

主题

9

帖子

25

积分

1°伸手党

Rank: 2

积分
25
发表于 19-4-11 20:54:29 | 显示全部楼层 |阅读模式         
                
5 {- @! @: e% ~6 ~* x- B' ]# j
  HotNews Pro主题自己已集成SEO优化源码,以是不必要安装类似All in One SEO Pack的插件,不外主题集成的SEO代码并没有为分类列表及页面文件提供形貌(description)及关键字(keywords),有童鞋问怎样加上此功能,所以简朴修改一下SEO代码,补上此功能,就是不知道加上这个有什么现实意义。详细方法很简单:
  打开HotNews Pro主题includes目次的seo.php模版文件,用下面代码更换此中的全部。
  1. 1.<?php if ( is_home() ) { ?><title><?php bloginfo('name'); ?> | <?php bloginfo('description'); ?></title><?php } ?>   9 u# j# K* W! V- z! ^) s( J
  2. 2.<?php if ( is_search() ) { ?><title>搜索效果 | <?php bloginfo('name'); ?></title><?php } ?>   7 }" q; g0 Q  X
  3. 3.<?php if ( is_single() ) { ?><title><?php echo trim(wp_title('',0)); ?> | <?php bloginfo('name'); ?></title><?php } ?>   1 p$ C# c  x+ n/ s( a& _6 W
  4. 4.<?php if ( is_page() ) { ?><title><?php echo trim(wp_title('',0)); ?> | <?php bloginfo('name'); ?></title><?php } ?>   " u8 O- |) k1 ~7 @' V% g
  5. 5.<?php if ( is_category() ) { ?><title><?php single_cat_title(); ?> | <?php bloginfo('name'); ?></title><?php } ?>   0 ]5 I; l5 `( R. p
  6. 6.<?php if ( is_month() ) { ?><title><?php the_time('F'); ?> | <?php bloginfo('name'); ?></title><?php } ?>   
      l" |2 [1 }1 S; u6 B0 m7 H
  7. 7.<?php if (function_exists('is_tag')) { if ( is_tag() ) { ?><title><?php  single_tag_title("", true); ?> | <?php bloginfo('name'); ?></title><?php } ?> <?php } ?>   3 B- }& F; k6 R0 v) \
  8. 8.<?php if ( is_author() ) {?><title><?php wp_title('');?>发表的所有文章 | <?php bloginfo('name'); ?></title><?php }?>   
    $ L' X* e* \! Q) ^
  9. 9.<?php   & h- v8 L* ?8 f$ Q
  10. 10.if (!function_exists('utf8Substr')) {   
    2 \5 D$ i: Z8 x; V6 t% F6 p
  11. 11. function utf8Substr($str, $from, $len)   ; O) S) k. w, P" P) l
  12. 12. {   
      P7 `2 F0 j- u" f( w. V
  13. 13.     return preg_replace('#^(?:[x00-x7F]|[xC0-xFF][x80-xBF]+){0,'.$from.'}'.   ( V' ]# I5 T; Z# N6 R9 h
  14. 14.          '((?:[x00-x7F]|[xC0-xFF][x80-xBF]+){0,'.$len.'}).*#s',   
    : |* M7 p* I7 z4 H: W
  15. 15.          '$1',$str);   ( ~' D. ^, O# l6 \
  16. 16. }   9 M$ O1 r4 ~. K. E
  17. 17.}   3 ^. G$ M  t; {! T
  18. 18.if ( is_single() ){   ' m& ^' b/ M9 Q% f6 [8 g1 ^
  19. 19.    if ($post->post_excerpt) {   , X. s- H& ]9 b+ f9 N5 M. _
  20. 20.        $description  = $post->post_excerpt;   
    $ j. D8 o8 @% j8 w5 F0 F# R' [$ G
  21. 21.    } else {   
    , ~% j8 ]: S) |9 y3 z5 w
  22. 22.   if(preg_match('/<p>(.*)</p>/iU',trim(strip_tags($post->post_content,"<p>")),$result)){   " M5 S7 v2 ]( J  i% p, W3 d
  23. 23.    $post_content = $result['1'];   # _( z* N) ~) s, k7 S
  24. 24.   } else {   
    $ |# ?* @0 q0 t) e: R- t
  25. 25.    $post_content_r = explode("n",trim(strip_tags($post->post_content)));   1 }% z$ L3 h& @/ H! b4 V, R
  26. 26.    $post_content = $post_content_r['0'];   
    : w6 S/ j; B! w
  27. 27.   }   ' C/ G& H3 Z1 z1 k
  28. 28.         $description = utf8Substr($post_content,0,220);     
    / W' U8 G. }& h0 e
  29. 29.  }   
      X' [) k) S8 |8 `+ M5 m5 W
  30. 30.    $keywords = "";        
    4 R6 R$ \$ ~0 X$ L; u
  31. 31.    $tags = wp_get_post_tags($post->ID);   
    " n- `2 N1 t# e* }) W4 t
  32. 32.    foreach ($tags as $tag ) {   
    5 D, Y4 H8 C# c+ U
  33. 33.        $keywords = $keywords . $tag->name . ",";   
    ( M% j+ H$ p3 K% O
  34. 34.    }   
    - q5 [* n8 S0 o" v
  35. 35.}   " `% q4 J4 k6 i. c& j. t4 R
  36. 36.?>   
    - d  g9 {! c* r/ B
  37. 37.<?php echo "n"; ?>   
    1 b9 X" F: d; j; F; ]* t- b/ D
  38. 38.<?php if ( is_single() ) { ?>   
    : r6 ^2 o" e9 f4 _) y% G- Z
  39. 39.<meta name="description" content="<?php echo trim($description); ?>" />   ! D7 {- ]( p7 `) _
  40. 40.<meta name="keywords" content="<?php echo rtrim($keywords,','); ?>" />     O/ s1 \2 H& G6 D# S7 D
  41. 41.<?php } ?>   * y' W8 w$ R" Z$ S* l
  42. 42.<?php if ( is_page() ) { ?>   5 k/ p+ i; v) w2 J8 J7 {2 f
  43. 43.<meta name="description" content="<?php $description = get_post_meta($post->ID, 'description', true);{echo $description;}?>" />   
    " k, z) `4 [3 F( g: ?$ T
  44. 44.<meta name="keywords" content="<?php $keywords = get_post_meta($post->ID, 'keywords', true);{echo $keywords;}?>" />   . M* m- ^2 ~$ E5 A$ F5 @, m! `
  45. 45.<?php } ?>   ! ?9 A# y& x3 B2 M
  46. 46.<?php if ( is_category() ) { ?>   
    " k, g$ v) C. Z/ }$ p( M* t
  47. 47.<meta name="description" content="<?php echo category_description( $categoryID ); ?>" />   * j8 @; @: `9 J* q+ ~7 U
  48. 48.<?php } ?>   " }" S+ z8 e: a! [( O
  49. 49.<?php if ( is_tag() ) { ?>   
    " \3 Y: H) c2 B: @
  50. 50.<meta name="description" content="<?php echo single_tag_title(); ?>" />   
    & i3 [6 `) P% h
  51. 51.<?php } ?>   1 D9 \5 T8 D/ Q" M
  52. 52.<?php if ( is_home() ) { ?>   
    2 D1 d8 s* L/ e3 v# x! S
  53. 53.<meta name="description" content="<?php echo get_option('swt_description'); ?>" />   
    - I8 T; M  I5 ^; W8 m) h
  54. 54.<meta name="keywords" content="<?php echo get_option('swt_keywords'); ?>" />   
    ) f" a0 p) K( \4 J
  55. 55.<?php } ?>
复制代码

3 _+ g/ G' \, K- b+ k: Z2 G# E
其中:

    5 ?" O- c( W; m  a# ]   
  • 分类列表页面,直接调用分类描述为该分类的页面描述,无关键字。
    ) u9 s6 M% L# l- y  v   
  • 标签页面,直接调用标署名称为描述
    ) a0 j/ i6 A' R: [3 {. r( v% G   
  • 页面文件,需为该页面分别添加自界说栏目:! L& s8 H4 p& v
       
  • 名称:description,值为:该页面描述. V3 I' V3 q# ^5 r4 B9 T
       
  • 名称:keywords,值为:该页面关键字
    9 d  r6 ]- C9 X
  原来也可以自动截取页面文件部门内容为该页面描述,不过原SEO代码是提取标签为关键字,貌似WP并没有为页面文件提供添加标签功能,所以直接使用自定义栏目实现。
  提示:复制上面的代码后需手动删除一下多余的空格,否则检察页面源代码会有大面积的空段,大概直接下载已修改好的seo.php模版文件,替换主题原文件。
/ h/ @" }$ y( i. C8 e1 a. A& w

3 l5 z* D+ D, A8 u7 t            

0

主题

6

帖子

4

积分

1°伸手党

Rank: 2

积分
4
发表于 昨天 18:37 | 显示全部楼层         
路过,支持一下啦
回复

使用道具 举报

网站简介

球球发,是一家 Discuz! 商业插件、风格模板、网站源码、 Discuz!运营维护技术等于一体的交流分享网站,全站95%的资源都是免费下载,对于资源我们是每天更新,每个亲测资源最新最全---球球发(如果我们有侵犯了您权益的资源请联系我们删除