Sitemap For SAE

搬来SAE这么久了,也懒得折腾。这才想起sitemap插件没法工作了,一直在使用caixw 编写的那个sitemap插件。为了自己使用移植到SAE上来。做了一点变动,在sitemap文件中剔除了附件条目。xml文件存放于SaeStorage,在插件上传安装后,为了保证插件在sae平台正常工作,还需要做以下工作:

1、在typecho的代码根目录下添加sitemap.php文件

<?php
$domain = "typecho"; //存放sitemap文件的domain
$sitemap = "";
if(isset($_GET['index']) &&  '' != $_GET['index']){
   $file = 'sitemap'.$_GET['index'].'.xml';
}else{
   $file = 'sitemap.xml';
}
$s = new SaeStorage();
if($s->fileExists($domain, $file)){
   $sitemap = $s->read($domain, $file);
   header("Content-type: application/xml; charset=utf-8"); 
   echo $sitemap;
}else{
  header('Location: http://'.$_SERVER['HTTP_HOST']);
}
?>

2、在config.yaml文件中添加

- rewrite: if ( !is_dir() && !is_file() && path ~ "/sitemap(.*).xml" ) goto "sitemap.php?index=$1"

3、在插件设置中设置domain
sitemap-sae.jpg

下载:点这里

Published by 阿飞 on
Tags: typecho, 插件, sae, sitemap

10 条评论

  1. 沙发,我不用~~~纯支持

    1. 我也是用着玩,从不追求访问量和排名啥的,就为了玩。

  2. 我也不用,对折腾没有兴趣了。

    1. 最近有点闲,没事瞎折腾。

  3. 为什么我用了这个之后sitemap.xml里总是没有最新的文章呢,再发布一篇新的之前那篇就出来了,但是最新的还是不出来

    1. 好像是有这问题,我一般发布日志后会检查内容,立即就会再次编辑刚发的日志,所以还没觉察这个问题。会尽快解决的,多谢提醒。

  4. 请问不是SAE的能用吗

    1. 这个就是sae版的啊,需要SaeStorage

      1. 哦 知道了。提醒一下,回复提醒邮件发了两次哦

  5. 应该是不能用的,否则也不需要专门出个SAE版的了。