wordpress默认不带xml网站地图,博客之前一直使用的是Google xml插件,今天帖一下纯代码生成xml网站地图,能少用一款插件就少用一款插件。
创建sitemap.php
网站根目录下新建一个sitemap.php文件,内容如下:
<?phprequire('./wp-blog-header.php');header("Content-type: text/xml");header('HTTP/1.1 200 OK');$posts_to_show=1000;echo'<?xml version="1.0"encoding="UTF-8"?>';echo '<urlsetxmlns="https://www.sitemaps.org/schemas/sitemap/0.9"xmlns:mobile="https://www.baidu.com/schemas/sitemap-mobile/1/">'?><url><loc><?phpechoget_home_url();?></loc><mobile:mobiletype="pc,mobile"/><lastmod><?php$ltime=get_lastpostmodified(GMT);$ltime=gmdate('Y-m-dTH:i:s+00:00',strtotime($ltime));echo$ltime;?></lastmod><changefreq>daily</changefreq><priority>1.0</priority></url><?php/* 文章页面 */$myposts=get_posts("numberposts=".$posts_to_show);foreach($mypostsas$post){?><url><loc><?phpthe_permalink();?></loc><mobile:mobiletype="pc,mobile"/><lastmod><?phpthe_time('c')?></lastmod><changefreq>monthly</changefreq><priority>0.6</priority></url><?php}/* 文章循环结束 */?><?php/* 单页面 */$mypages=get_pages();if(count($mypages)>0){foreach($mypagesas$page){?><url><loc><?phpechoget_page_link($page->ID);?></loc><mobile:mobiletype="pc,mobile"/><lastmod><?phpechostr_replace(" ","T",get_page($page->ID)->post_modified);?>+00:00</lastmod><changefreq>weekly</changefreq><priority>0.6</priority></url><?php}}/* 单页面循环结束 */?><?php/* 博客分类 */$terms=get_terms('category','orderby=name&hide_empty=0');$count=count($terms);if($count>0){foreach($termsas$term){?><url><loc><?phpechoget_term_link($term,$term->slug);?></loc><mobile:mobiletype="pc,mobile"/><changefreq>weekly</changefreq><priority>0.8</priority></url><?php}}/* 分类循环结束 */?><?php/* 标签(可选) */$tags=get_terms("post_tag");foreach($tagsas$key=>$tag){$link=get_term_link(intval($tag->term_id),"post_tag");if(is_wp_error($link))returnfalse;$tags[$key]->link=$link;?><url><loc><?phpecho$link;?></loc><mobile:mobiletype="pc,mobile"/><changefreq>monthly</changefreq><priority>0.4</priority></url><?php}/* 标签循环结束 */?></urlset>
设置伪静态
nginx添加如下伪静态规则:
rewrite^/sitemap.xml$/sitemap.php last;
访问:你的域名/sitemap.xml
钻芒博客xml站点地图:https://www.zmki.cn/sitemap.xml