在 wordpress 中实现站点地图 sitemap.xml 的功能是很简单的,有专门的针对百度 sitemap.xml 的地图插件,其实 wordpress 的归档功能基本上已经实现了站点地图的功能,如果有归档的功能,就可以完全不用使用 sitemap.xml,比如夏日博客的归档页面,sitemap.xml 的作用也就是让搜索引擎的蜘蛛在站点爬起来不费劲而已。,下面夏日博客就来教大家如何使用页面模板来实现 sitemap.xml 的功能,首先新建 sitemap.php 文件,然后将如下的代码拷贝进去。,通过浏览器 sitemap.php 测试页面是否正常显示,也就是你的域名 xiariboke.net/sitemap.php,如果能正常显示,再进行下一步的操作,添加伪静态规则,如果我们使用的是 Apache 服务器,直接修改 .htaccess 文件即可,添加如下的规则:,我想大多的服务器都是 Apache 服务器了,如果使用的是虚拟主机,可以找到根目录下的 .htaccess 文件进行修改即可,至此,sitemap.xml 站点地图已经做好了,我们可以进行这样测试,打开 xiariboke.net/sitemap.xml,如果不能正常显示,首先检查一下自己的站点是否启用了缓存之类的插件,清除缓存后再进行刷新测试。,

在 wordpress 中实现站点地图 sitemap.xml 的功能是很简单的,有专门的针对百度 sitemap.xml 的地图插件,其实 wordpress 的归档功能基本上已经实现了站点地图的功能,如果有归档的功能,就可以完全不用使用 sitemap.xml,比如夏日博客的归档页面,sitemap.xml 的作用也就是让搜索引擎的蜘蛛在站点爬起来不费劲而已。

下面夏日博客就来教大家如何使用页面模板来实现 sitemap.xml 的功能,首先新建 sitemap.php 文件,然后将如下的代码拷贝进去。

  1. require('./wp-blog-header.php');  
  2. header("Content-type: text/xml");  
  3. header('HTTP/1.1 200 OK');  
  4. $posts_to_show = 1000;   
  5. echo '"1.0" encoding="UTF-8"?>';  
  6. echo '"http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:mobile="http://www.baidu.com/schemas/sitemap-mobile/1/">'  
  7. ?>  
  8.     
  9.       echo get_home_url(); ?>  
  10.       $ltime = get_lastpostmodified(GMT);$ltime = gmdate('Y-m-d\TH:i:s+00:00', strtotime($ltime)); echo $ltime; ?>  
  11.       daily  
  12.       1.0  
  13.     
  14. /* 文章页面 */   
  15. header("Content-type: text/xml");  
  16. $myposts = get_posts( "numberposts=" . $posts_to_show );  
  17. foreach$myposts as $post ) { ?>  
  18.     
  19.         
  20.         
  21.       monthly  
  22.       0.6  
  23.     
  24. /* 文章循环结束 */ ?>    
  25. /* 单页面 */   
  26. $mypages = get_pages();  
  27. if(count($mypages) > 0) {  
  28.     foreach($mypages as $page) { ?>  
  29.       
  30.       echo get_page_link($page->ID); ?>  
  31.       echo str_replace(" ","T",get_page($page->ID)->post_modified); ?>+00:00  
  32.       weekly  
  33.       0.6  
  34.     
  35. /* 单页面循环结束 */ ?>   
  36. /* 博客分类 */   
  37. $terms = get_terms('category', 'orderby=name&hide_empty=0' );  
  38. $count = count($terms);  
  39. if($count > 0){  
  40. foreach ($terms as $term) { ?>  
  41.       
  42.       echo get_term_link($term$term->slug); ?>  
  43.       weekly  
  44.       0.8  
  45.     
  46. /* 分类循环结束 */?>   
  47.  /* 标签(可选) */  
  48. $tags = get_terms("post_tag");  
  49. foreach ( $tags as $key => $tag ) {  
  50.     $link = get_term_link( intval($tag->term_id), "post_tag" );  
  51.          if ( is_wp_error( $link ) )  
  52.           return false;  
  53.           $tags$key ]->link = $link;  
  54. ?>  
  55.    
  56.       echo $link ?>  
  57.       monthly  
  58.       0.4  
  59.     
  60. /* 标签循环结束 */ ?>   
  61.   

通过浏览器 sitemap.php 测试页面是否正常显示,也就是你的域名 xiariboke.net/sitemap.php,如果能正常显示,再进行下一步的操作,添加伪静态规则,如果我们使用的是 Apache 服务器,直接修改 .htaccess 文件即可,添加如下的规则:

  1. RewriteRule ^(sitemap)\.xml$ $1.php  

我想大多的服务器都是 Apache 服务器了,如果使用的是虚拟主机,可以找到根目录下的 .htaccess 文件进行修改即可,至此,sitemap.xml 站点地图已经做好了,我们可以进行这样测试,打开 xiariboke.net/sitemap.xml,如果不能正常显示,首先检查一下自己的站点是否启用了缓存之类的插件,清除缓存后再进行刷新测试。

,

在 wordpress 中实现站点地图 sitemap.xml 的功能是很简单的,有专门的针对百度 sitemap.xml 的地图插件,其实 wordpress 的归档功能基本上已经实现了站点地图的功能,如果有归档的功能,就可以完全不用使用 sitemap.xml,比如夏日博客的归档页面,sitemap.xml 的作用也就是让搜索引擎的蜘蛛在站点爬起来不费劲而已。

下面夏日博客就来教大家如何使用页面模板来实现 sitemap.xml 的功能,首先新建 sitemap.php 文件,然后将如下的代码拷贝进去。

  1. require('./wp-blog-header.php');  
  2. header("Content-type: text/xml");  
  3. header('HTTP/1.1 200 OK');  
  4. $posts_to_show = 1000;   
  5. echo '"1.0" encoding="UTF-8"?>';  
  6. echo '"http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:mobile="http://www.baidu.com/schemas/sitemap-mobile/1/">'  
  7. ?>  
  8.     
  9.       echo get_home_url(); ?>  
  10.       $ltime = get_lastpostmodified(GMT);$ltime = gmdate('Y-m-d\TH:i:s+00:00', strtotime($ltime)); echo $ltime; ?>  
  11.       daily  
  12.       1.0  
  13.     
  14. /* 文章页面 */   
  15. header("Content-type: text/xml");  
  16. $myposts = get_posts( "numberposts=" . $posts_to_show );  
  17. foreach$myposts as $post ) { ?>  
  18.     
  19.         
  20.         
  21.       monthly  
  22.       0.6  
  23.     
  24. /* 文章循环结束 */ ?>    
  25. /* 单页面 */   
  26. $mypages = get_pages();  
  27. if(count($mypages) > 0) {  
  28.     foreach($mypages as $page) { ?>  
  29.       
  30.       echo get_page_link($page->ID); ?>  
  31.       echo str_replace(" ","T",get_page($page->ID)->post_modified); ?>+00:00  
  32.       weekly  
  33.       0.6  
  34.     
  35. /* 单页面循环结束 */ ?>   
  36. /* 博客分类 */   
  37. $terms = get_terms('category', 'orderby=name&hide_empty=0' );  
  38. $count = count($terms);  
  39. if($count > 0){  
  40. foreach ($terms as $term) { ?>  
  41.       
  42.       echo get_term_link($term$term->slug); ?>  
  43.       weekly  
  44.       0.8  
  45.     
  46. /* 分类循环结束 */?>   
  47.  /* 标签(可选) */  
  48. $tags = get_terms("post_tag");  
  49. foreach ( $tags as $key => $tag ) {  
  50.     $link = get_term_link( intval($tag->term_id), "post_tag" );  
  51.          if ( is_wp_error( $link ) )  
  52.           return false;  
  53.           $tags$key ]->link = $link;  
  54. ?>  
  55.    
  56.       echo $link ?>  
  57.       monthly  
  58.       0.4  
  59.     
  60. /* 标签循环结束 */ ?>   
  61.   

通过浏览器 sitemap.php 测试页面是否正常显示,也就是你的域名 xiariboke.net/sitemap.php,如果能正常显示,再进行下一步的操作,添加伪静态规则,如果我们使用的是 Apache 服务器,直接修改 .htaccess 文件即可,添加如下的规则:

  1. RewriteRule ^(sitemap)\.xml$ $1.php  

我想大多的服务器都是 Apache 服务器了,如果使用的是虚拟主机,可以找到根目录下的 .htaccess 文件进行修改即可,至此,sitemap.xml 站点地图已经做好了,我们可以进行这样测试,打开 xiariboke.net/sitemap.xml,如果不能正常显示,首先检查一下自己的站点是否启用了缓存之类的插件,清除缓存后再进行刷新测试。

最后修改:2025 年 09 月 10 日
如果觉得我的文章对你有用,请随意夸赞