我正在创建一个应用程序,sitemap.xml每次在网站上添加或更新新内容时,该应用程序都会自动更新.
根据Google的最佳做法,<lastmod></lastmod>标记的格式应如下所示:
<lastmod>2011-06-27T19:34:00+01:00</lastmod>
我的问题涉及时间格式化本身.我理解这一2011-06-27T19:34:00部分.我不明白的是+01:00,我假设的是+/- UTC.
这是正确的假设吗?
我的时区表如下所示:

因此,如果该网站位于#4阿富汗,那么正确的时间将是:
2011-06-27T19:34:00+04:00
如果该网站位于#6阿拉斯加标准时间,那么正确的时间将是: 2011-06-27T19:34:00-09:00
我的假设是正确的还是我没有正确理解+01:00?
met*_*ode 17
该lastmod标签在座位图中是可选的,在大多数情况下,它被搜索引擎忽略,因为网站管理员在保持准确性方面做得非常糟糕.在任何情况下,您都可以使用它,格式取决于您的能力和要求; 如果您不能或不想要,您实际上不必提供时区偏移,您也可以选择使用简单的YYYY-MM-DD.
上次修改文件的日期.此日期应采用W3C日期时间格式.如果需要,此格式允许您省略时间部分,并使用YYYY-MM-DD.
如果你想要达到那个粒度并提供时区偏移量,那么你是正确的,它是UTC +/-.从W3C日期时间:
时间以当地时间表示,以及以小时和分钟为单位的时区偏移.时区偏移"+ hh:mm"表示日期/时间使用的是本地时区,该时区是UTC的"hh"小时和"mm"分钟.时区偏移"-hh:mm"表示日期/时间使用的是本地时区,即"hh"小时和UTC后面的"mm"分钟.
例如,仍然来自W3C:
1994-11-05T08:15:30-05:00对应于1994年11月5日,美国东部标准时间上午8:15:30.
小智 6
在 C# 中正确格式化 XML 站点地图的上次修改 (lastmod) 时间
var ss = DateTime.Now.ToString("yyyy-mm-ddThh:mm:ss:zzz");
Run Code Online (Sandbox Code Playgroud)