=== VB Sitemap Generator ===
Contributors: verbaste
Tags: sitemap, xml sitemap, seo, images, multilingual
Requires at least: 6.0
Tested up to: 7.0
Requires PHP: 7.4
Stable tag: 1.1.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Lightweight, standards-compliant XML sitemap generator for WordPress with image and multilingual sitemap support.

== Description ==
VB Sitemap Generator creates XML sitemaps dynamically with caching and without unnecessary overhead.

Features:
* Sitemap index: /vb-sitemap.xml
* Sharded content sitemaps: /vb-sitemap-main-*.xml
* Separate language sitemaps on supported multilingual sites: /vb-sitemap-en-*.xml, /vb-sitemap-pl-*.xml, etc.
* Global image sitemap: /vb-sitemap-images-*.xml
* Includes public posts, pages, public custom post types, public taxonomy terms, and supported post type archives
* Includes images in content sitemap entries and in the dedicated image sitemap
* Publish-only post URLs
* Uses post_modified_gmt for lastmod
* Exclusion filters for custom noindex/SEO integrations
* Automatically excludes WooCommerce Cart, Checkout, and My Account pages when WooCommerce is active
* Robots.txt integration
* Redirects /sitemap.xml to /vb-sitemap.xml
* Disables the default WordPress /wp-sitemap.xml to avoid duplicate sitemap systems

Multilingual compatibility:
* Polylang
* WPML

When a supported multilingual plugin is active with more than one language, VB Sitemap Generator creates separate content sitemap shards for each active language. The image sitemap remains global and collects content from all supported languages.

Other multilingual plugins are not currently supported. On those sites the plugin falls back to the standard /vb-sitemap-main-*.xml structure, and sitemap completeness depends on how that multilingual plugin modifies WordPress queries.

The plugin follows modern XML sitemap standards and avoids deprecated elements such as changefreq and priority.

== Installation ==
1. Upload the plugin folder to `/wp-content/plugins/`, or install it through the WordPress Plugins screen.
2. Activate the plugin through the Plugins screen.
3. Open `/vb-sitemap.xml` to verify the generated sitemap index.

== Frequently Asked Questions ==

= Where is the sitemap? =
By default: `/vb-sitemap.xml`.

= What happens on a multilingual site? =
With a supported multilingual plugin (Polylang or WPML) and more than one active language, the sitemap index contains separate language sitemap shards such as `/vb-sitemap-en-1.xml` and `/vb-sitemap-pl-1.xml`.

= What happens if my multilingual plugin is not supported? =
The plugin uses the standard `/vb-sitemap-main-*.xml` sitemap structure. Support for additional multilingual plugins can be added through the multilingual provider layer.

= Does it write files to disk? =
No. Sitemaps are generated dynamically and cached. Static file generation may be added in a future version.

= Can I exclude content? =
Yes. Developers can use the plugin filters, including `vb_sg_exclude_post`, `vb_sg_exclude_url`, `vb_sg_is_noindex_post`, `vb_sg_is_noindex_term`, `vb_sg_exclude_image`, `vb_sg_included_post_types`, and `vb_sg_included_taxonomies`.

== Changelog ==

= 1.1.0 - 2026-08-13 =
* Added multilingual provider architecture for future integrations.
* Added native Polylang support.
* Added native WPML support.
* Added separate sharded content sitemaps per active language.
* Kept a single global sharded image sitemap across all supported languages.
* Preserved the standard main sitemap fallback when no supported multilingual setup is detected.
* Automatically excludes WooCommerce Cart, Checkout, and My Account pages, including their supported translations.
* Fixed image shard ranges so shards scan disjoint post ranges.
* Added automatic rewrite rule refresh after plugin upgrades.
* Added a taxonomy inclusion filter (`vb_sg_included_taxonomies`).
* Updated cache keys for the new sitemap structure.
* Clarified noindex integration behavior in the documentation.

= 1.0.2 - 2026-06-13 =
* Fixed public page collection on page-based sites.
* Removed the overly restrictive publicly_queryable requirement from sitemap post type detection.
* Prevented duplicate static front page entries in the main sitemap.
* Added static front page images to the homepage sitemap entry.
* Updated cache keys to avoid stale sitemap output after upgrade.
* Sitemap index: /vb-sitemap.xml
* Sharded main sitemap: /vb-sitemap-main-*.xml

= 1.0.0 - 2026-02-24 =
* Initial release.
* Sitemap index: /sitemap.xml
* Sharded main sitemap: /sitemap-main-*.xml
* Image sitemap support.
* Robots.txt integration.

== Upgrade Notice ==

= 1.1.0 =
Adds Polylang and WPML support with separate language sitemap shards, WooCommerce system page exclusions, and safer image sharding.

= 1.0.2 =
Fixes page-based sites where the sitemap could include only the homepage.
