在结构中使用重复的字段名来生成XML网站地图



我正在Go中构建一个站点地图生成器。我想生成以下URL结构来投诉谷歌网站地图结构。

<url>
<loc>https://www.website.nl/nl/over-ons</loc>
<xhtml:link rel="alternate" href="https://www.website.nl/nl/over-ons" hreflang="nl"/>
<xhtml:link rel="alternate" href="https://www.website.nl/en/about-us" hreflang="en"/>
<xhtml:link rel="alternate" href="https://www.website.nl/de/uber-uns" hreflang="de"/>
<changefreq>daily</changefreq>
<priority>0.7</priority>
<lastmod>2020-12-05T03:59:58+01:00</lastmod>
</url>

因此,我创建了以下结构:

type Url struct {
Loc         string      `xml:"loc"`
Link        Link        `xml:"link"`
Changefreq  string      `xml:"changefreq"`
Priority    string      `xml:"priority"`
Lastmod     string      `xml:"lastmod"`
}
type Link struct {
Rel  string         `xml:"rel,attr,omitempty"`
Href string         `xml:"href,attr"`
Hreflang string     `xml:"hreflang,attr"`
}

我不知道如何处理链接字段。以下问题能帮上忙吗?

  1. 我怎么能加三次相同的";链接";结构中的字段
  2. 如何命名字段";xhtml:链接";,我在上遇到错误:在名称中

如果您想添加多个链接条目,只需为此使用一个数组:

Link []Link `xml:"xhtml:link"`

最新更新