WordPress开启sitemap.xml,一段代码解决。

大家都知道网站地图,没有这个百度不容易爬到你的网站,也很难被收录,恰巧今天自己做一个新站遇到了就分享给大家了。

只需要在你的WordPress网站根目录加入以下代码,新建一个PHP文件,命名为 sitemap.php

<?php
require('./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 '<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:mobile="http://www.baidu.com/schemas/sitemap-mobile/1/">'
?>
<!-- generated-on=<?php echo get_lastpostdate('blog'); ?> Diy By 张戈博客(https://zhang.ge)-->
  <url>
      <loc><?php echo get_home_url(); ?></loc>
      <lastmod><?php $ltime = get_lastpostmodified(GMT);$ltime = gmdate('Y-m-d\TH: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( $myposts as $post ) { ?>
  <url>
      <loc><?php the_permalink(); ?></loc>
      <lastmod><?php the_time('c') ?></lastmod>
      <changefreq>monthly</changefreq>
      <priority>0.6</priority>
  </url>
<?php } /* 文章循环结束 */ ?>  
<?php
/* 单页面 */ 
$mypages = get_pages();
if(count($mypages) > 0) {
    foreach($mypages as $page) { ?>
    <url>
      <loc><?php echo get_page_link($page->ID); ?></loc>
      <lastmod><?php echo str_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 ($terms as $term) { ?>
    <url>
      <loc><?php echo get_term_link($term, $term->slug); ?></loc>
      <changefreq>weekly</changefreq>
      <priority>0.8</priority>
  </url>
<?php }} /* 分类循环结束 */?> 
<?php
 /* 标签(可选) */
$tags = get_terms("post_tag");
foreach ( $tags as $key => $tag ) {
	$link = get_term_link( intval($tag->term_id), "post_tag" );
	     if ( is_wp_error( $link ) )
		  return false;
		  $tags[ $key ]->link = $link;
?>
 <url>
      <loc><?php echo $link ?></loc>
      <changefreq>monthly</changefreq>
      <priority>0.4</priority>
  </url>
<?php  } /* 标签循环结束 */ ?> 
</urlset>

如果你的服务器做了伪静态规则还需要加入下面一段在伪静态里面

 如果是Nginx 重启 nginx 即可

rewrite ^/sitemap.xml$ /sitemap.php last;

如果是Apache 重启 Apache 即可

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

然后访问https://你的域名/sitemap.xml

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
一、WordPress 七牛云对象存储(简称:WPQiNiu),基于七牛云对象存储与 WordPress 实现静态资源到对象存储中,让静态资源包括图片、附件分离 WordPress 根目录,提高网站打开速度。 插件特点 新增支持图像自定义处理 设置水印、编辑图片、压缩 WEBP 等 支持已有图片编辑功能 支持自定义域名设置 支持一键替换静态本地化至对象存储远程 URL 支持一键禁止缩略图 支持自定义任意对象存储目录,一个存储桶可以多网站 支持自动文件重命名 支持本地和对象存储分离和同步 2020 年重构代码改变传统逻辑模型 二、 WordPress 百度搜索推送插件,主要功能:发布新文章时推送文章 URL 至百度搜索资源平台,支持主动推送、自动推送、快速收录,并且完全免费。 百度搜索推送插件特色: 仅发布新文章时才主动提交,修改/更新文章不会重复提交。 与其它同类插件相比较,本插件不会新增自定义栏目,故而不会在数据库中留下垃圾数据,不会使数据库变得臃肿。 实时显示提交成功的数量与快速收录当天的提交量。 可设置百度自动推送代码。 本插件为绿色插件,卸载插件后不会留下任何数据。 三、 生成 XML 地图和 HTML 地图。 XML 地图已经通过百度,谷哥,360,搜狗,头条蜘蛛测试。 HTML 地图采取最简模式设计,方便蜘蛛爬取。 可以在每次更新文章时自动更新。 也可以手动更新。 四、 Akismet 会根据我们的全球垃圾评论数据库检查您的评论和联系表单提交,以保护您和您的站点免受恶意内容的侵害。您可以在站点的“评论”管理屏幕上查看垃圾评论。 Akismet 的主要功能包括: 自动检查所有评论,并筛选出垃圾评论。 每个评论都有状态记录,因此您可以轻松查看 Akismet 发现或清除哪些评论与哪些评论被主持人判断是否是垃圾评论。 在评论正文中,显示 URL 与显示隐藏或误导性的连结。 主持人可以看到每个用户的批准注释数。 丢弃功能彻底阻止最恶劣的垃圾评论,节省您的磁盘空间并加快您的站点速度。 五、 WP SMTP 插件是国人制作的,设置页面的顶部包含了 Gmail 邮箱、微软邮箱、163 邮箱、QQ 邮箱的设置示例,可以点击对应的图标查看示例截图,其他邮箱设置方法也差不多。 WP SMTP 插件已被 WordPress 官方收录,已自带简体中文语言包,而且可以在卸载时自动删除设置数据。 配置好 WP SMTP 以后,你可以发送一封测试邮件,看是否成功。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

WordPress小程序开发

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值