免插件实现WordPress的Sitemap功能

生成Sitemap的插件有很多,比较知名的有柳城的Baidu Sitemap?Generator和Google XML Sitemaps,感觉就为了生成个Sitmap多用插件有点点浪费,那就用代码实现吧~缺点在于此为动态页面,提交网站地图时不知道会不会有困难。

新建一个sitemap.php至主题目录下,复制如下内容:

  1. <?php
  2. /**
  3. @package?WordPress
  4. Template?Name:?站点地图
  5. */
  6. ?>
  7. <!DOCTYPE?html?PUBLIC?"-//W3C//DTD?XHTML?1.0?Transitional//EN"?"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  8. <html?xmlns="http://www.w3.org/1999/xhtml">
  9. <head?profile="http://gmpg.org/xfn/11">
  10. <meta?http-equiv="Content-Type"?content="text/html;?charset=<?php?bloginfo(?'charset'?);??>"?/>
  11. <title>站点地图?-?<?php?bloginfo('name');??></title>
  12. <meta?name="keywords"?content="站点地图,<?php?bloginfo('name');??>"?/>
  13. <meta?name="copyright"?content="<?php?bloginfo('name');??>"?/>
  14. <link?rel="canonical"?href="<?php?echo?get_permalink();??>"?/>
  15. <style?type="text/css">
  16. body?{font-family:?Verdana;FONT-SIZE:?12px;MARGIN:?0;color:?#000000;background:?#ffffff;}
  17. img?{border:0;}
  18. li?{margin-top:?8px;}
  19. .page?{padding:?4px;?border-top:?1px?#EEEEEE?solid}
  20. .author?{background-color:#EEEEFF;?padding:?6px;?border-top:?1px?#ddddee?solid}
  21. #nav,?#content,?#footer?{padding:?8px;?border:?1px?solid?#EEEEEE;?clear:?both;?width:?95%;?margin:?auto;?margin-top:?10px;}
  22. </style>
  23. </head>
  24. <body?vlink="#333333"?link="#333333">
  25. <h2?style="text-align:?center;?margin-top:?20px"><?php?bloginfo('name');??>'s?SiteMap?</h2>
  26. <center></center>
  27. <div?id="nav"><a?href="<?php?bloginfo('url');??>/"><strong><?php?bloginfo('name');??></strong></a>?&raquo;?<a?href="<?php?echo?get_permalink();??>">站点地图</a></div>
  28. <div?id="content">
  29. <h3>最新文章</h3>
  30. <ul>
  31. <?php
  32. $previous_year?=?$year?=?0;
  33. $previous_month?=?$month?=?0;
  34. $ul_open?=?false;
  35. $myposts?=?get_posts('numberposts=-1&orderby=post_date&order=DESC');
  36. foreach($myposts?as?$post)?:
  37. ?>
  38. <li><a?href="<?php?the_permalink();??>"?title="<?php?the_title();??>"?target="_blank"><?php?the_title();??></a></li>
  39. <?php?endforeach;??>
  40. </ul>
  41. </div>
  42. <div?id="content">
  43. <li?class="categories">分类目录<ul>
  44. <?php?wp_list_categories('title_li=');??>
  45. </ul></li>
  46. </div>
  47. <div?id="content">
  48. <li?class="categories">单页面</li>
  49. <?php?wp_page_menu(?$args?);??>
  50. </div>
  51. <div?id="footer">查看博客首页:?<strong><a?href="<?php?bloginfo('url');??>/"><?php?bloginfo('name');??></a></strong></div><br?/>
  52. <center>
  53. <div?style="text-algin:?center;?font-size:?11px">Latest?Update:?<?php?$last?=?$wpdb->get_results("SELECT?MAX(post_modified)?AS?MAX_m?FROM?$wpdb->posts?WHERE?(post_type?=?'post'?OR?post_type?=?'page')?AND?(post_status?=?'publish'?OR?post_status?=?'private')");$last?=?date('Y-m-d?G:i:s',?strtotime($last[0]->MAX_m));echo?$last;??><br?/><br?/></div>
  54. </center>
  55. <center>
  56. <div?style="text-algin:?center;?font-size:?11px">Powered?by?<strong><a?href="http://www.kilvn.com/view/wordpress-no-plugins-sitemap"?target="_blank">免插件SiteMap</a></strong>&nbsp;
  57. &copy;?<?php?echo?date('Y');??>?<a?href="<?php?bloginfo('url');?>/"?style="cursor:help"><?php?bloginfo('name');?></a>?版权所有.<br?/><br?/></div>
  58. </center>
  59. </body>
  60. </html>

在WP后台新建一个页面,类型为:站点地图,不用填写任何内容,点击发布即可。

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin
avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: