Documentation ¶
Overview ¶
Generates sitemaps and index files based on the sitemaps.org protocol. facilitates the creation of sitemaps for large amounts of urls. For a full guide visit https://github.com/StudioSol/Sitemap
Index ¶
- Constants
- Variables
- func CloseIndexGroups(groups ...*IndexGroup) (done <-chan bool)
- func CreateSitemapIndex(indexFilePath string, index Index) (err error)
- func PingSearchEngines(indexFile string)
- type ChangeFreq
- type File
- type HttpResponse
- type Index
- type IndexGroup
- type Sitemap
- type SitemapGroup
- func (s *SitemapGroup) Add(url URL)
- func (s *SitemapGroup) Clear()
- func (s *SitemapGroup) ClearSavedSitemaps()
- func (s *SitemapGroup) Configure(name string, isMobile bool)
- func (s *SitemapGroup) Create(url_set URLSet) ([]File, error)
- func (s *SitemapGroup) Files() chan File
- func (s *SitemapGroup) URLs() []string
- type URL
- type URLSet
Constants ¶
const ( XMLNS = "http://www.sitemaps.org/schemas/sitemap/0.9" XMLNSMOBILE = "http://www.google.com/schemas/sitemap-mobile/1.0" PREAMBLE = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" MAXURLSETSIZE = 50000 MAXFILESIZE = 10 * 1024 * 1024 //10mb )
Variables ¶
Functions ¶
func CloseIndexGroups ¶
func CloseIndexGroups(groups ...*IndexGroup) (done <-chan bool)
Starts to run the given list of Sitemap Groups concurrently.
func CreateSitemapIndex ¶
Creates and gzip the xml index
func PingSearchEngines ¶
func PingSearchEngines(indexFile string)
Sends a ping to search engines indicating that the index has been updated. Currently supports Google and Bing.
Types ¶
type ChangeFreq ¶
type ChangeFreq string
const ( Always ChangeFreq = "always" Hourly ChangeFreq = "hourly" Daily ChangeFreq = "daily" Weekly ChangeFreq = "weekly" Monthly ChangeFreq = "monthly" Yearly ChangeFreq = "yearly" Never ChangeFreq = "never" )
type HttpResponse ¶
type HttpResponse struct {
// contains filtered or unexported fields
}
type Index ¶
type Index struct { XMLName xml.Name `xml:"sitemapindex"` XMLNS string `xml:"xmlns,attr"` Sitemaps []Sitemap `xml:"sitemap"` }
func CreateIndexByScanDir ¶
Search all the xml.gz sitemaps_dir directory, uses the modified date of the file as lastModified path_index is included for the function does not include the url of the index in your own content, if it is present in the same directory.
func CreateIndexBySlice ¶
Returns an index sitemap starting from a slice of urls
type IndexGroup ¶
type IndexGroup struct {
// contains filtered or unexported fields
}
func NewIndexGroup ¶
func NewIndexGroup(folder string, name string) (*IndexGroup, error)
Creates a new group of sitemaps indice that used a common name. If the sitemap exceed the limit of 50k urls, new sitemaps will have a numeric suffix to the name. Example: - blog_1.xml.gz - blog_2.xml.gz
func (*IndexGroup) Close ¶
func (s *IndexGroup) Close() <-chan bool
Mandatory operation, handle the rest of the url that has not been added to any sitemap and add. Furthermore performs cleaning of variables and closes the channel group
func (*IndexGroup) Configure ¶
func (s *IndexGroup) Configure(name string, folder string) error
Configure name and folder of group
func (*IndexGroup) Create ¶
func (s *IndexGroup) Create(index Index)
Saves the sitemap from the sitemap.URLSet
type SitemapGroup ¶
type SitemapGroup struct {
// contains filtered or unexported fields
}
func NewSitemapGroup ¶
func NewSitemapGroup(name string, isMobile bool) *SitemapGroup
Creates a new group of sitemaps that used a common name. If the sitemap exceed the limit of 50k urls, new sitemaps will have a numeric suffix to the name. Example: - blog_1.xml.gz - blog_2.xml.gz
func (*SitemapGroup) ClearSavedSitemaps ¶
func (s *SitemapGroup) ClearSavedSitemaps()
clean array of already generated sitemaps (not delete files)
func (*SitemapGroup) Configure ¶
func (s *SitemapGroup) Configure(name string, isMobile bool)
Configure name and folder of group
func (*SitemapGroup) Create ¶
func (s *SitemapGroup) Create(url_set URLSet) ([]File, error)
Saves the sitemap from the sitemap.URLSet
func (*SitemapGroup) Files ¶
func (s *SitemapGroup) Files() chan File
func (*SitemapGroup) URLs ¶
func (s *SitemapGroup) URLs() []string
returns the url of already generated sitemaps