{"id":82750,"date":"2018-03-10T16:27:14","date_gmt":"2018-03-10T16:27:14","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/svg-map-by-saedi\/"},"modified":"2026-04-04T04:13:21","modified_gmt":"2026-04-04T04:13:21","slug":"svg-map-by-saedi","status":"publish","type":"plugin","link":"https:\/\/pcd.wordpress.org\/plugins\/svg-map-by-saedi\/","author":16012469,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.0.3","stable_tag":"1.0.3","tested":"6.9.4","requires":"5.8","requires_php":"8.0","requires_plugins":null,"header_name":"SVG Map by Smjrifle","header_author":"Smjrifle","header_description":"This is a short description of what the plugin does. It's displayed in the WordPress admin area.","assets_banners_color":"f1eeed","last_updated":"2026-04-04 04:13:21","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/smjrifle.net","header_plugin_uri":"https:\/\/smjrifle.net","header_author_uri":"https:\/\/smjrifle.net","rating":0,"author_block_rating":0,"active_installs":0,"downloads":1129,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","changelog"],"tags":{"1.0.1":{"tag":"1.0.1","author":"smjrifle","date":"2026-02-01 08:43:59"},"1.0.3":{"tag":"1.0.3","author":"smjrifle","date":"2026-04-04 04:13:21"}},"upgrade_notice":{"1.0.2":"<p>Branding update and additional security hardening. Update recommended.<\/p>"},"ratings":{"1":0,"2":0,"3":0,"4":0,"5":0},"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":1837663,"resolution":"128x128","location":"assets","locale":""},"icon-256\u00d7256.png":{"filename":"icon-256\u00d7256.png","revision":1837663,"resolution":"256x256","location":"assets","locale":""},"icon.svg":{"filename":"icon.svg","revision":1837663,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-1544\u00d7500.png":{"filename":"banner-1544\u00d7500.png","revision":1837663,"resolution":"1544x500","location":"assets","locale":""},"banner-772\u00d7250.png":{"filename":"banner-772\u00d7250.png","revision":1837663,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.1","1.0.3"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":1837663,"resolution":"1","location":"assets","locale":""},"screenshot-2.png":{"filename":"screenshot-2.png","revision":1837663,"resolution":"2","location":"assets","locale":""}},"screenshots":{"1":"Admin settings page","2":"Front-end SVG map display"},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[451,351,2909,2904],"plugin_category":[44,54],"plugin_contributors":[154214],"plugin_business_model":[],"class_list":["post-82750","plugin","type-plugin","status-publish","hentry","plugin_tags-interactive","plugin_tags-locations","plugin_tags-map","plugin_tags-svg","plugin_category-discussion-and-community","plugin_category-security-and-spam-protection","plugin_contributors-smjrifle","plugin_committers-smjrifle"],"banners":{"banner":"https:\/\/ps.w.org\/svg-map-by-saedi\/assets\/banner-772\u00d7250.png?rev=1837663","banner_2x":"https:\/\/ps.w.org\/svg-map-by-saedi\/assets\/banner-1544\u00d7500.png?rev=1837663","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/svg-map-by-saedi\/assets\/icon.svg?rev=1837663","icon":"https:\/\/ps.w.org\/svg-map-by-saedi\/assets\/icon.svg?rev=1837663","icon_2x":false,"generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/svg-map-by-saedi\/assets\/screenshot-1.png?rev=1837663","caption":"Admin settings page"},{"src":"https:\/\/ps.w.org\/svg-map-by-saedi\/assets\/screenshot-2.png?rev=1837663","caption":"Front-end SVG map display"}],"raw_content":"<!--section=description-->\n<p>SVG Map by Smjrifle allows you to display an interactive SVG map with clickable points.<\/p>\n\n<p>Administrators can select points from the map and assign popup descriptions that appear on hover.<\/p>\n\n<p>Originally developed under Saedi Works, this plugin is now independently maintained and actively improved by Smjrifle.<\/p>\n\n<p>Features include:<\/p>\n\n<ul>\n<li>Interactive SVG map<\/li>\n<li>Clickable location points<\/li>\n<li>Admin-managed popup descriptions<\/li>\n<li>Popup descriptions on hover<\/li>\n<li>Shortcode integration<\/li>\n<li>Secure AJAX handling<\/li>\n<li>Security hardened architecture<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin folder to the <code>\/wp-content\/plugins\/<\/code> directory.<\/li>\n<li>Activate the plugin through the <strong>Plugins<\/strong> menu in WordPress.<\/li>\n<li><p>Use the shortcode:<\/p>\n\n<p>[display_svg_map]<\/p><\/li>\n<\/ol>\n\n<!--section=changelog-->\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Rebranded to SVG Map by Smjrifle.<\/li>\n<li>Ownership and maintenance clarified.<\/li>\n<li>Security hardening improvements.<\/li>\n<li>Improved input sanitization and validation.<\/li>\n<li>Performance and compatibility updates.<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Security: Fixed CSRF and stored XSS vulnerabilities.<\/li>\n<li>Added nonce and capability checks for AJAX actions.<\/li>\n<li>Improved admin UI\/UX.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<\/ul>","raw_excerpt":"Add an interactive SVG world map with selectable points and popup descriptions.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/82750","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=82750"}],"author":[{"embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/smjrifle"}],"wp:attachment":[{"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=82750"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=82750"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=82750"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=82750"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=82750"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/pcd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=82750"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}