{"id":272213,"date":"2026-01-06T14:49:58","date_gmt":"2026-01-06T14:49:58","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/interactive-svg-maps\/"},"modified":"2026-10-17T08:08:24","modified_gmt":"2026-10-17T08:08:24","slug":"max-interactive-maps","status":"publish","type":"plugin","link":"https:\/\/os.wordpress.org\/plugins\/max-interactive-maps\/","author":16360211,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.1.3","stable_tag":"1.1.3","tested":"6.9.10","requires":"5.8","requires_php":"8.0","requires_plugins":null,"header_name":"Max Interactive Maps","header_author":"WPGeared","header_description":"Lightweight interactive SVG map plugin with drag-and-drop pins. No API keys required.","assets_banners_color":"d2dce3","last_updated":"2026-10-17 08:08:24","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/wpgeared.com\/donate","header_plugin_uri":"https:\/\/wpgeared.com\/plugins\/max-interactive-maps","header_author_uri":"https:\/\/wpgeared.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":404,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.1.2":{"tag":"1.1.2","author":"aamirfaiz","date":"2026-01-06 14:49:50","revision":3433715},"1.1.3":{"tag":"1.1.3","author":"aamirfaiz","date":"2026-10-17 08:08:24","revision":3751619}},"upgrade_notice":{"1.1.3":"<p>Includes save-integrity, stale-save and damaged-record safeguards, rendering, mobile and keyboard fixes. Existing maps and [mximap_map] shortcodes need no migration. Back up first and reload open map editors after updating.<\/p>","1.1.2":"<p>Final fix for residual prefixes.<\/p>","1.1.1":"<p>Version bump for WordPress compliance.<\/p>","1.1.0":"<p>Major update: Plugin rebranded to Max Interactive Maps. Shortcode changed from [ism_map] to [mximap_map]. Please update your shortcodes after upgrading.<\/p>","1.0.4":"<p>Fixed pin visibility issues with labels.<\/p>","1.0.1":"<p>Improvements to pin positioning accuracy.<\/p>","1.0.0":"<p>Initial release of Max Interactive Maps.<\/p>"},"ratings":[],"assets_icons":{"icon-256x256.png":{"filename":"icon-256x256.png","revision":3751619,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3751619,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3751619,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.1.2","1.1.3"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3751619,"resolution":"1","location":"assets","locale":"","width":2826,"height":1310},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3751619,"resolution":"2","location":"assets","locale":"","width":2812,"height":1232},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3751619,"resolution":"3","location":"assets","locale":"","width":2136,"height":1090}},"screenshots":{"1":"Map Builder interface with drag-and-drop pins","2":"Map color controls for customizing land, water\/background, and borders","3":"Pin settings dialog for URLs, labels, icon styles, colors, and font options"}},"plugin_section":[],"plugin_tags":[16172,253459,2909,2904,17940],"plugin_category":[49],"plugin_contributors":[231968],"plugin_business_model":[],"class_list":["post-272213","plugin","type-plugin","status-publish","hentry","plugin_tags-interactive-map","plugin_tags-location-marker","plugin_tags-map","plugin_tags-svg","plugin_tags-world-map","plugin_category-maps-and-location","plugin_contributors-wpgeared","plugin_committers-aamirfaiz"],"banners":{"banner":"https:\/\/ps.w.org\/max-interactive-maps\/assets\/banner-772x250.png?rev=3751619","banner_2x":"https:\/\/ps.w.org\/max-interactive-maps\/assets\/banner-1544x500.png?rev=3751619","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/max-interactive-maps\/assets\/icon-256x256.png?rev=3751619","icon_2x":"https:\/\/ps.w.org\/max-interactive-maps\/assets\/icon-256x256.png?rev=3751619","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/max-interactive-maps\/assets\/screenshot-1.png?rev=3751619","caption":"Map Builder interface with drag-and-drop pins"},{"src":"https:\/\/ps.w.org\/max-interactive-maps\/assets\/screenshot-2.png?rev=3751619","caption":"Map color controls for customizing land, water\/background, and borders"},{"src":"https:\/\/ps.w.org\/max-interactive-maps\/assets\/screenshot-3.png?rev=3751619","caption":"Pin settings dialog for URLs, labels, icon styles, colors, and font options"}],"raw_content":"<!--section=description-->\n<p><strong>Max Interactive Maps<\/strong> adds a bundled SVG world map to WordPress. Place pins with a visual editor, choose their labels, destination URLs, colors and icons, then embed the published map using its shortcode. Maps do not require a third-party map service, map tiles or an API key.<\/p>\n\n<h4>Key Features<\/h4>\n\n<ul>\n<li><strong>Drag-and-Drop Pin Placement<\/strong> - Add and position pins on the bundled world map<\/li>\n<li><strong>Percentage-Based Positioning<\/strong> - Pin anchors scale with the map's SVG canvas<\/li>\n<li><strong>5 Pin Icon Styles<\/strong> - Choose from Simple Dot, Teardrop, Star, Flag, or Pushpin designs<\/li>\n<li><strong>Custom Color Controls<\/strong> - Set land color, water\/background color, border color, and individual pin colors<\/li>\n<li><strong>Responsive Maps<\/strong> - Maps resize with their container and use smaller icons on narrower screens; crowded labels may need author adjustments<\/li>\n<li><strong>Place Structured Data<\/strong> - Labeled pins contribute Place entries to ItemList JSON-LD; geographic coordinates are not generated automatically<\/li>\n<li><strong>No Map-Service API<\/strong> - The map is bundled locally; WordPress supplies the editor libraries<\/li>\n<li><strong>Keyboard Controls<\/strong> - Focus and edit pins from the keyboard, including arrow-key positioning and a managed settings dialog<\/li>\n<li><strong>Save Feedback<\/strong> - Clear warnings for rejected or conflicting map edits and protected damaged records<\/li>\n<\/ul>\n\n<h4>Use Cases<\/h4>\n\n<ul>\n<li>Travel blogs showing visited destinations<\/li>\n<li>Business locations and branch offices<\/li>\n<li>Event locations<\/li>\n<li>Real estate property maps<\/li>\n<li>Tourism and attraction maps<\/li>\n<li>Educational geography content<\/li>\n<\/ul>\n\n<h4>How It Works<\/h4>\n\n<ol>\n<li>Create a new map from the Max Interactive Maps admin menu<\/li>\n<li>Add pins by clicking \"Add Pin\" and drag them to your desired locations<\/li>\n<li>Double-click pins, or focus a pin and press Enter or Space, to set its URL, label, color, icon and font options<\/li>\n<li>Publish and copy the shortcode<\/li>\n<li>Paste the shortcode into a post, page or widget that processes WordPress shortcodes<\/li>\n<\/ol>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>max-interactive-maps<\/code> folder to the <code>\/wp-content\/plugins\/<\/code> directory<\/li>\n<li>Activate the plugin through the 'Plugins' menu in WordPress<\/li>\n<li>Go to 'Max Interactive Maps' in your admin menu to create your first map<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20plugin%20require%20an%20api%20key%3F\"><h3>Does this plugin require an API key?<\/h3><\/dt>\n<dd><p>No. The bundled map does not require a map-service API key, tile server or geocoding service.<\/p><\/dd>\n<dt id=\"are%20the%20maps%20responsive%3F\"><h3>Are the maps responsive?<\/h3><\/dt>\n<dd><p>Maps resize with their container and pins use percentage anchors. Long labels, closely spaced pins and theme styles can affect the final layout; review the map in its intended page layout.<\/p><\/dd>\n<dt id=\"can%20i%20customize%20the%20map%20colors%3F\"><h3>Can I customize the map colors?<\/h3><\/dt>\n<dd><p>You can customize land, water\/background and border colors. Each pin can also have its own color.<\/p><\/dd>\n<dt id=\"how%20many%20pins%20can%20i%20add%3F\"><h3>How many pins can I add?<\/h3><\/dt>\n<dd><p>The plugin does not enforce a pin limit. Readability and responsiveness depend on the map's content and layout; no universal performance threshold has been established.<\/p><\/dd>\n<dt id=\"what%20does%20an%20embedded%20map%20add%20to%20a%20page%3F\"><h3>What does an embedded map add to a page?<\/h3><\/dt>\n<dd><p>Each embed includes the inline world SVG and its pin markup. Map pages also load the plugin's frontend CSS and JavaScript. Page size and rendering cost depend on the number of embeds, pins and labels as well as the surrounding site. No fixed page-speed or zero-impact guarantee is made.<\/p><\/dd>\n<dt id=\"will%20existing%20maps%20and%20shortcodes%20keep%20working%20after%20this%20update%3F\"><h3>Will existing maps and shortcodes keep working after this update?<\/h3><\/dt>\n<dd><p>Existing maps and <code>[mximap_map id=\"123\"]<\/code> shortcodes need no migration or bulk resave. Back up your site before updating and reload any open map editors afterward. If a save is rejected or a damaged record is protected, review the warning rather than clearing or repeatedly resaving the map.<\/p><\/dd>\n<dt id=\"what%20licence%20and%20map%20data%20does%20the%20plugin%20use%3F\"><h3>What licence and map data does the plugin use?<\/h3><\/dt>\n<dd><p>The plugin retains its GNU GPL version 2 or later licence; the full version 2 text is included in <code>LICENSE.txt<\/code>. The bundled map's country geometry numerically matches Natural Earth's public-domain data. Source evidence and the unknown original SVG conversion history are recorded in <code>NOTICE.txt<\/code>.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.1.3<\/h4>\n\n<ul>\n<li>Correct editor rendering of quoted labels and preserve encoded URLs and other pin-field round trips.<\/li>\n<li>Add clear rejected-save feedback and stale\/concurrent-save protection for map pins and colors.<\/li>\n<li>Protect damaged or ambiguous stored records without automatically repairing, clearing or renumbering them.<\/li>\n<li>Correct mobile icon sizing and improve pin names, native link semantics and keyboard\/dialog behavior.<\/li>\n<li>Give repeated shortcode embeds unique request-local DOM IDs while retaining each map's first legacy ID.<\/li>\n<li>Align cleared map-color defaults and palette previews between editor and frontend.<\/li>\n<li>Include missing frontend assets for late-footer and WordPress AJAX map rendering.<\/li>\n<li>Correct screenshot captions, prepare separate listing banners and clarify licence and listing information.<\/li>\n<\/ul>\n\n<h4>1.1.2<\/h4>\n\n<ul>\n<li>Fix residual prefixes on server and version bump.<\/li>\n<\/ul>\n\n<h4>1.1.1<\/h4>\n\n<ul>\n<li>Pre-release version bump for WordPress upload.<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>Complete plugin rebrand to Max Interactive Maps<\/li>\n<li>Renamed all files, classes, and CSS prefixes from ism to mximap<\/li>\n<li>Updated shortcode from [ism_map] to [mximap_map]<\/li>\n<li>Changed text domain to max-interactive-maps<\/li>\n<\/ul>\n\n<h4>1.0.4<\/h4>\n\n<ul>\n<li>Fixed pin icon visibility when labels are present<\/li>\n<li>Changed icon positioning to use translateY(-100%) for reliable anchoring<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Fixed pin alignment issues on frontend<\/li>\n<li>Restructured CSS for better anchor point stability<\/li>\n<li>Decoupled pin icon position from label height<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<li>Custom Post Type for map management<\/li>\n<li>Drag-and-drop pin placement<\/li>\n<li>5 pin icon styles<\/li>\n<li>Custom color controls<\/li>\n<li>Shortcode embedding<\/li>\n<li>Schema.org JSON-LD output<\/li>\n<li>Responsive design<\/li>\n<li>Accessibility features<\/li>\n<\/ul>","raw_excerpt":"Interactive SVG world maps with draggable pins, custom colors and shortcode embedding. No map-service API key required.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/os.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/272213","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/os.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/os.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/os.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=272213"}],"author":[{"embeddable":true,"href":"https:\/\/os.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/aamirfaiz"}],"wp:attachment":[{"href":"https:\/\/os.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=272213"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/os.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=272213"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/os.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=272213"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/os.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=272213"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/os.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=272213"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/os.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=272213"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}