我一直在四处寻找,但我似乎找不到关于这个问题的任何信息。
如果你去https://support.google.com/webmasters/answer/34648 它说必须将移动标签添加到您的 xml 中才能正确抓取它。 我的问题在于我不知道如何在使用 XDocument 时实际制作此标签。
有谁知道怎么写这个标签
<mobile:mobile/>
使用 XElement 标签?
我有以下生成文档的代码
XNamespace sitemap = XNamespace.Get("http://www.sitemaps.org/schemas/sitemap/0.9");
XNamespace mobile = XNamespace.Get("http://www.google.com/schemas/sitemap-mobile/1.0");
XDocument doc = new XDocument(
new XDeclaration("1.0", "utf-8", null),
new XElement(sitemap + "urlset",
new XAttribute(XNamespace.Xmlns + "mobile", mobile))
);
以及以下构建元素的代码
private XElement BuildSitemapItem(XNamespace ns)
{
XElement urlNode = new XElement(ns + "url",
new XElement(ns +"loc"),
new XElement(ns + "lastmod")
);
return urlNode;
}
我已经在这个问题上停留了一段时间,所以我们将不胜感激。
最佳答案
您只需在 XElement 上指定正确的命名空间(在本例中为移动设备)
XNamespace mobileNs = "http://www.google.com/schemas/sitemap-mobile/1.0";
new XElement(mobileNs + "mobile")
这将输出 <mobile:mobile/>
关于c# - XDocument 谷歌移动站点地图标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20636250/