# `PhoenixKit.Modules.Sitemap.Sources.Publishing`
[🔗](https://github.com/BeamLabEU/phoenix_kit/blob/v1.7.71/lib/modules/sitemap/sources/publishing.ex#L1)

Publishing source for sitemap generation.

Collects published posts from the PhoenixKit Publishing system.
Includes both group listing pages and individual post pages.

## URL Structure

Uses PhoenixKit URL prefix from config:
- Blog listing: `/{prefix}/{blog_slug}` (default language)
- Blog listing: `/{prefix}/{lang}/{blog_slug}` (non-default language)

For slug mode posts:
- `/{prefix}/{blog_slug}/{post_slug}` (default language)
- `/{prefix}/{lang}/{blog_slug}/{post_slug}` (non-default language)

For timestamp mode posts:
- Single post on date: `/{prefix}/{blog_slug}/{date}` (e.g., /blog/2025-12-09)
- Multiple posts on date: `/{prefix}/{blog_slug}/{date}/{time}` (e.g., /blog/2025-12-09/16:26)

## Exclusion

Posts can be excluded by setting `post.metadata.sitemap_exclude = true`.

## Sitemap Properties

- Blog listings:
  - Priority: 0.7
  - Change frequency: daily
  - Category: Blog name

- Individual posts:
  - Priority: 0.8
  - Change frequency: weekly
  - Category: Blog name
  - Last modified: Post's date_updated or timestamp

# `sub_sitemaps`
[🔗](https://github.com/BeamLabEU/phoenix_kit/blob/v1.7.71/lib/modules/sitemap/sources/publishing.ex#L64)

When `sitemap_publishing_split_by_group` is enabled, returns per-blog sub-sitemaps.
Otherwise returns nil (single file).

---

*Consult [api-reference.md](api-reference.md) for complete listing*
