Releases: gsarig/ootb-openstreetmap
Release 2.12.0
AI-powered maps, now with WordPress 7.0 support
The map AI assistant lets you place markers using plain English: type something like "Show me where Game of Thrones was filmed" and watch the pins drop. WordPress 7.0 introduces a built-in AI connector, and this release adds full support for it — so if your site is already configured with one, the plugin will use it automatically. If you prefer to use your own API key from an external provider, that continues to work and takes priority.
Try it without installing anything
The plugin now ships with a WordPress Playground blueprint. You can open a live demo via the Test Preview button on the WordPress.org plugin page — no download, no local setup. If you don't see the button, try signing in to your WordPress.org account.
Fixes and improvements
A few rough edges have been smoothed out: edge cases in the AI flow (empty results, unexpected response formats, race conditions) now fail gracefully, and the underlying REST endpoint got stricter input validation with more accurate error responses.
Release 2.11.0
Marker Clustering
Maps with many markers can get hard to read when pins overlap at lower zoom levels. Version 2.11.0 adds opt-in marker clustering support: nearby markers are automatically grouped into a single cluster badge, which breaks apart as the user zooms in to reveal individual pins.
Clustering is disabled by default so existing maps are unaffected. To enable it, toggle the new "Enable clustering" option in the block's Behavior settings panel. The [ootb_query] shortcode also gains an enableclustering attribute.
Customisation via ootb_marker_cluster_options
For advanced use cases, the new ootb_marker_cluster_options filter lets you customise the clustering behaviour programmatically — controlling things like the cluster radius, zoom thresholds, animation, spiderfy behaviour, chunked loading, and more. Read the full documentation and examples.
This closes issue #19 and addresses the clustering support request on the WordPress.org support forum.
Other Changes
AI Ability improvements: The add-map-to-post AI ability now supports a fuller set of block parameters — map type, shape options, zoom range with automatic clamping, interaction controls (dragging, touch zoom, scroll-wheel zoom, fullscreen), and clustering.
More test coverage: Added integration tests for all public Query filter hooks (ootb_query_post_type, ootb_query_posts_per_page, ootb_query_extra_args, ootb_block_marker_text, ootb_cf_marker_icon).
Dependency updates: @wordpress/scripts, @playwright/test, and GitHub Actions workflows.
Full Changelog: 2.10.0...2.11.0
Release 2.10.0
What's new in 2.10.0
- Fullscreen support (#34) — A new "Fullscreen mode" toggle in the block settings lets visitors expand the map to full screen. Also available via the
[ootb_query fullscreen="true"]shortcode attribute. Thanks to @mgiannopoulos24 for the contribution (#65)! - Richer geodata marker popups (#68) — When a geodata map marker has no address set and no custom
ootb_cf_modal_contentfilter override, the popup now falls back to a linked post title (with the featured thumbnail prepended when available), instead of being empty. - Security & dependency updates — Resolved multiple Dependabot alerts by upgrading transitive dependencies (
serialize-javascript,webpack-dev-server,minimatch,svgo,immutable) and bumping CI actions to their latest versions.
Full Changelog: 2.9.0...2.10.0
Release 2.9.0
2.9.0 brings a small but meaningful set of changes, and marks a turning point in how the plugin is
developed and maintained (spoiler: AI-assisted).
What's new
- WordPress Abilities API support. The plugin now registers its capabilities through the Abilities API
introduced in WordPress 6.9, laying the groundwork for deeper integration with AI tools and future
WordPress features. - Minimum WordPress version bumped to 6.6. If you're running an older version, now is a good time to
update. - Bug fix: empty markers no longer cause an error.
Under the hood
This release also ships a significantly expanded test suite and a hardened CI pipeline. None of this is
visible to users, but it matters: every future change to the plugin now runs through a comprehensive set
of automated checks — including tests against the actual distribution zip that gets installed from
WordPress.org, not just the source code.
The reason this matters beyond stability: this infrastructure is what makes it possible to move toward an
AI-assisted development and maintenance workflow for the plugin — where routine tasks like compatibility
checks, code review, and release preparation can be increasingly automated, with human sign-off at the
decisions that actually count.
What's Changed
Full Changelog: 2.8.9...2.9.0
Release 2.8.9
What's Changed
- Fixes a bug where the block alignment wasn't respected.
- Build script updates.
- Ensures compatibility with WordPress 6.9.
Release/2.8.9 by @gsarig in #64
Full Changelog: 2.8.8...2.8.9
Release 2.8.8
What's Changed
A new filter has been added as a follow up to this request, to allow customizing the text content that appears in marker popups. It's particularly useful when querying maps from other posts, as it provides the ability to customize the popup content for each marker. The filter accepts three parameters:
$marker_text: The original text content of the marker.$post_id: The ID of the post where the marker was defined.$current_post_id: The ID of the current post where the map is being displayed.
Example:
add_filter( 'ootb_block_marker_text', 'customize_marker_text', 10, 3 );
function customize_marker_text($text, $post_id, $current_post_id) {
// Only modify content if we're showing markers from other posts
if ($post_id !== $current_post_id) {
// Get post title and URL
$post_title = get_the_title( $post_id );
$post_url = get_permalink( $post_id );
// Add a simple header with link above the original content
$text = sprintf('<h4><a href="%s">%s</a></h4>%s',
esc_url($post_url),
esc_html($post_title),
$text
);
}
return $text;
}
Full Changelog: 2.8.7...2.8.8
Release 2.8.7
This version fixes a bug with WordPress 6.8 (read more).
Release 2.8.6
This version adds support for more AI providers, besides OpenAI. OpenAI is kept as the default, but you can now set your own API Provider and Model in the settings.
👉 Read more 👈
Release 2.8.5
This release ensures that the plugin passes the checks of Plugin Check (PCP).
Also, drops support for old PHP versions, with the minimum supported being PHP 8.1.
Finally, an improvement to the workflow pipelines was made, to include a proper zip of the plugin in the Release's attachments, for anyone who wants to download the plugin as a zip and install it from here.
Release 2.8.4
This is a security update. Also, the last version that supports PHP 7.4.


