=== EffortLess Visual Sitemap ===
Contributors: domclic
Donate link: https://id7.dev/donate/?plugin=effortless-visual-sitemap
Tags: sitemap, visual sitemap, seo, xml sitemap, accessibility
Requires at least: 6.2
Tested up to: 7.0
Requires PHP: 7.4
Stable tag: 1.0.34
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Beautiful categorized visual sitemap from WordPress core sitemaps – pure CSS.

== Description ==
Clean accordion sitemap using core sitemaps. Supports custom slugs + hide groups.

== Installation ==
1. Upload plugin
2. Activate
3. Use [elsmg_visual_sitemap]

== Shortcode Attributes ==
- title="Site Map"
- expand="yes"
- show_title="no"
- hide_groups="authors,categories,tags" (comma-separated, lowercase)

== Changelog ==

= 1.0.34 =
* Fix: update plugin name casing to EffortLess; add plugin identifier to donate link.
= 1.0.33 =
* Fix: rename shortcode tag from generic 'visual_sitemap' to prefixed 'elsmg_visual_sitemap' to prevent naming conflicts (WordPress.org review requirement)

= 1.0.32 =
* Security: fix SSRF — validate sub-sitemap <loc> host before fetching; use wp_safe_remote_get()
* Security: fix XXE — add LIBXML_NONET flag and disable entity loader on PHP 7.x
* Security: filter collected URLs to same-host only (defence-in-depth against foreign slug leakage)
* Fix: posts now classified accurately using WP core sitemap sub-index type metadata (fixes /%postname%/ sites where all posts were shown as Pages)
* Fix: cache key now includes per-site salt (AUTH_KEY / DB_NAME) to prevent collisions on shared object-cache backends
* Fix: guard $wp_rewrite->author_base against null / empty — falls back to 'author'
* Fix: empty category_base / tag_base option no longer produces '//' prefix that silently misroutes all taxonomy archives
* Fix: CSS moved to wp_enqueue_style() + wp_add_inline_style() — no more body-level <style> tag after closing </div>
* Fix: admin notice strings now translated and properly escaped

= 1.0.31 =
* Code review fixes: cache key helper, URL grouping bug fix (leading slash on bases), CSS dedup guard, removed redundant save_post hook, settings callback simplified, Requires at least bumped to 5.9

= 1.0.30 =
* Added CLAUDE.md with codebase documentation

= 1.0.29 =
* Robust grouping with custom category/tag/author bases
* Added hide_groups shortcode attribute

= 1.0.28 =
* WPCS/PHPCS compliance
* Plugin Check fixes