[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fsKaLiP3sr_LFUEvsp1DkMPSvHbmwC2Brn_qhOwxFdVo":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":11,"num_ratings":11,"last_updated":13,"tested_up_to":14,"requires_at_least":15,"requires_php":16,"tags":17,"homepage":23,"download_link":24,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27,"vulnerabilities":28,"developer":29,"crawl_stats":26,"alternatives":35,"analysis":134,"fingerprints":226},"mapthread","Mapthread","1.6.1","David","https:\u002F\u002Fprofiles.wordpress.org\u002Frandomwire\u002F","\u003Cp>\u003Cstrong>Mapthread\u003C\u002Fstrong> brings your adventures to life with interactive, auto-following maps.\u003C\u002Fp>\n\u003Cp>Perfect for travel bloggers, hiking enthusiasts, and anyone who wants to tell location-based stories that engage readers.\u003C\u002Fp>\n\u003Cp>\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FLBp_favwZVs?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\u003C\u002Fp>\n\u003Ch4>Storytelling\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Map automatically follows your narrative as readers scroll\u003C\u002Fli>\n\u003Cli>Pauses when readers explore the map themselves, resumes when they scroll on\u003C\u002Fli>\n\u003Cli>Click any marker to jump to that part of the story text\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Maps\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Upload a GPX file from any hiking, cycling, or fitness app\u003C\u002Fli>\n\u003Cli>Elevation profile with distance and gain\u002Floss stats\u003C\u002Fli>\n\u003Cli>Street, Satellite, Topographic map styles plus more from other providers (with API keys)\u003C\u002Fli>\n\u003Cli>Fullscreen mode, layer switcher, and optional GPX download for readers\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Markers\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Place waypoints anywhere in your story with optional emoji pins\u003C\u002Fli>\n\u003Cli>Find locations by address or paste coordinates\u003C\u002Fli>\n\u003Cli>Import named waypoints directly from your GPX file as Map Marker blocks in one click\u003C\u002Fli>\n\u003Cli>Without a GPX file, markers are connected together using a straight line\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Layout\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Two-column desktop view: story on the left, sticky map on the right\u003C\u002Fli>\n\u003Cli>Mobile: map sticky at top (hidden by default)\u003C\u002Fli>\n\u003Cli>Readers can dismiss and restore the map at any time\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Perfect For\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Hiking and backpacking blogs\u003C\u002Fli>\n\u003Cli>Travel storytelling\u003C\u002Fli>\n\u003Cli>Cycling route documentation\u003C\u002Fli>\n\u003Cli>Race and event recaps\u003C\u002Fli>\n\u003Cli>Historical narratives with geographic context\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>How It Works\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Create a post and add the \u003Cstrong>Map GPX\u003C\u002Fstrong> block\u003C\u002Fli>\n\u003Cli>Upload your GPX file from the media library\u003C\u002Fli>\n\u003Cli>If your GPX contains named waypoints, click \u003Cstrong>Import as Map Markers\u003C\u002Fstrong> to add them automatically — or insert \u003Cstrong>Map Marker\u003C\u002Fstrong> blocks manually at key points in your story\u003C\u002Fli>\n\u003Cli>Add coordinates and titles to any markers, then arrange them in your story\u003C\u002Fli>\n\u003Cli>Publish – the map automatically follows as readers scroll!\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Examples\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Frandomwire.com\u002Fmaling-ancient-road\u002F\" rel=\"nofollow ugc\">Maling Ancient Road\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Frandomwire.com\u002Fjiyugaoka-green-roads\u002F\" rel=\"nofollow ugc\">Jiyugaoka’s Green Roads\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Frandomwire.com\u002Fhakuba\u002F\" rel=\"nofollow ugc\">Hakuba: Into The Abyss\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Frandomwire.com\u002Fshimanami-kaido\u002F\" rel=\"nofollow ugc\">Cycling the Shimanami Kaido\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Compatibility\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Browsers: Chrome 105+, Safari 15.4+\u003C\u002Fli>\n\u003Cli>Themes: Tested on Twenty Twenty-Four and Twenty Twenty-Five. Should work on most block themes. Classic themes are not supported.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Configuring Additional Map Providers (Optional)\u003C\u002Fh3>\n\u003Cp>Mapthread includes three free map styles out of the box (Street, Satellite, Topographic). You can also connect additional tile providers with an API key for more map styles: \u003Cstrong>Mapbox\u003C\u002Fstrong>, \u003Cstrong>Thunderforest\u003C\u002Fstrong>, \u003Cstrong>JawgMaps\u003C\u002Fstrong>, \u003Cstrong>Stadia Maps\u003C\u002Fstrong>.\u003C\u002Fp>\n\u003Col>\n\u003Cli>Go to Settings > Mapthread\u003C\u002Fli>\n\u003Cli>Enter your API key for any supported provider (Mapbox, Thunderforest, JawgMaps, Stadia Maps)\u003C\u002Fli>\n\u003Cli>Select which map styles to enable for each provider\u003C\u002Fli>\n\u003Cli>Save Changes — enabled styles will appear in the map layer switcher on the frontend\u003C\u002Fli>\n\u003C\u002Fol>\n","Transform your travel stories into interactive map experiences. Upload GPX files, place markers, watch the map follow as readers scroll.",0,184,"2026-02-25T09:23:00.000Z","6.9.4","6.0","7.4",[18,19,20,21,22],"gpx","hiking","map","route","travel","https:\u002F\u002Fgithub.com\u002Frandomwire\u002FMapthread","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fmapthread.1.6.1.zip",100,null,"2026-03-15T15:16:48.613Z",[],{"slug":30,"display_name":7,"profile_url":8,"plugin_count":31,"total_installs":11,"avg_security_score":25,"avg_patch_time_days":32,"trust_score":33,"computed_at":34},"randomwire",1,30,94,"2026-04-04T15:53:37.981Z",[36,58,78,99,117],{"slug":37,"name":38,"version":39,"author":40,"author_profile":41,"description":42,"short_description":43,"active_installs":44,"downloaded":45,"rating":33,"num_ratings":46,"last_updated":47,"tested_up_to":48,"requires_at_least":49,"requires_php":50,"tags":51,"homepage":55,"download_link":56,"security_score":57,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"nomad-world-map","Nomad World Map","1.3.1","worldnomadmap","https:\u002F\u002Fprofiles.wordpress.org\u002Fworldnomadmap\u002F","\u003Cp>For each location that is added to the map you can set the type of content you want to show. Either the excerpt of a blog post, a short custom description or only the travel dates.\u003C\u002Fp>\n\u003Cp>The location content itself is shown in a carousel underneath the map. When you slide through the carousel the map will automatically zoom to the location that is linked to the visible content.\u003C\u002Fp>\n\u003Ch4>Features include:\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Create multiple independent maps\u003C\u002Fli>\n\u003Cli>Add multiple maps to the same page\u003C\u002Fli>\n\u003Cli>A sidebar widget that can show your last location\u003C\u002Fli>\n\u003Cli>Show a list of visited locations with optional arrival and departure dates\u003C\u002Fli>\n\u003Cli>Set custom thumbnails for each location\u003C\u002Fli>\n\u003Cli>Set custom line colors for the past and future travel routes\u003C\u002Fli>\n\u003Cli>Rearrange the order of the travel route by dragging the items up or down in the route list.\u003C\u002Fli>\n\u003Cli>Specify if you want the map to zoom to the first or last location of your travel route.\u003C\u002Fli>\n\u003Cli>Choose from three different content types for each location. Either link to a blog post, write a custom description or show the travel dates.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Ca href=\"http:\u002F\u002Fnomadworldmap.com\u002F\" rel=\"nofollow ugc\">Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>If you want to contribute to the development of this plugin, you can do so through \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fnomadworldmap\u002Fnomad-world-map\" rel=\"nofollow ugc\">GitHub\u003C\u002Fa>.\u003C\u002Fp>\n","Create your own custom travel map. Link locations on the map to blog posts and share your travel plans.",700,40661,50,"2016-08-30T15:30:00.000Z","4.6.30","3.5","",[52,21,22,53,54],"google-maps","travel-blog","trip","http:\u002F\u002Fnomadworldmap.com\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fnomad-world-map.1.3.1.zip",85,{"slug":59,"name":60,"version":61,"author":62,"author_profile":63,"description":64,"short_description":65,"active_installs":66,"downloaded":67,"rating":11,"num_ratings":11,"last_updated":68,"tested_up_to":69,"requires_at_least":70,"requires_php":50,"tags":71,"homepage":76,"download_link":77,"security_score":57,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"logmytrip","LogMyTrip","1.9","ajohnwaters","https:\u002F\u002Fprofiles.wordpress.org\u002Fajohnwaters\u002F","\u003Cp>Your posts are plotted on a Google map as points on a route in date order. Just create a page for your map, then add the shortcode [logmytripmap] anywhere in the page to see your map appear. Clicking on a point icon can show a picture taken at that location if one is attached to a post.  A small Google map is displayed on the “Edit Post” screen to allow users to geotag their posts.\u003C\u002Fp>\n\u003Cp>Hovering over the address when viewing individual posts reveals a map of the post location. See \u003Ca href=\"http:\u002F\u002Fwww.LogMyTrip.co.uk\" rel=\"nofollow ugc\">www.LogMyTrip.co.uk\u003C\u002Fa> for more info.\u003C\u002Fp>\n","Viewing your posts as a route plotted on a Google map is simple with this plugin. Just add the shortcode [logmytripmap] to a page to see the map.",40,6884,"2015-02-14T11:24:00.000Z","4.1.42","3.1",[72,73,74,75,22],"adventure-travel","google-map","maps","route-maps","http:\u002F\u002Fwww.LogMyTrip.co.uk","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flogmytrip.1.9.zip",{"slug":79,"name":80,"version":81,"author":82,"author_profile":83,"description":84,"short_description":85,"active_installs":86,"downloaded":87,"rating":88,"num_ratings":89,"last_updated":90,"tested_up_to":91,"requires_at_least":92,"requires_php":93,"tags":94,"homepage":96,"download_link":97,"security_score":98,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"wp-trip-summary","WP Trip Summary","0.3.2","Alexandru BOIA","https:\u002F\u002Fprofiles.wordpress.org\u002Falexandruboia\u002F","\u003Cp>🌟 \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Falexboia\u002FWP-Trip-Summary\" rel=\"nofollow ugc\">GitHub\u003C\u002Fa>\u003Cbr \u002F>\n❤️ \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwp-trip-summary\u002F\" rel=\"ugc\">WordPress\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>attach technical information to a post (ex. how long was your trip, how much did you totally climb, where from and where to, how hard do you think it has been, what kind of roads or trails did you encounter etc.);\u003C\u002Fli>\n\u003Cli>attach GPS data to a post (GPX, GeoJSON and KML files are currently accepted as data sources) and display that track on a map;\u003C\u002Fli>\n\u003Cli>maintain rider’s log entries, while optionally specifying some of them as public;\u003C\u002Fli>\n\u003Cli>allows management of the look-up data used to populate the fields presented as single or multi-selection options list (ex. \u003Ccode>Difficulty Level\u003C\u002Fcode>, \u003Ccode>Open During Seasons\u003C\u002Fcode> etc.);\u003C\u002Fli>\n\u003Cli>allows customization of the map layer:\n\u003Cul>\n\u003Cli>map tile source (comes by default configured with \u003Ca href=\"https:\u002F\u002Fwww.openstreetmap.org\u002F\" rel=\"nofollow ugc\">OpenStreetMap\u003C\u002Fa>); \u003C\u002Fli>\n\u003Cli>enabling\u002Fdisabling of available map controls; \u003C\u002Fli>\n\u003Cli>customizing the visual representation of the track).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>allows customization of the measurement unit system used to represent various values (ex. \u003Ccode>Total distance\u003C\u002Fcode>, \u003Ccode>Total climb\u003C\u002Fcode> etc.);\u003C\u002Fli>\n\u003Cli>multi-language.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>More details\u003C\u002Fh3>\n\u003Cp>This plug-in provides three basic features:\u003Cbr \u002F>\n– allow some structured information to be filled in, according to a selected trip type;\u003Cbr \u002F>\n– allow some GPS track to be uploaded and then rendered on a map;\u003Cbr \u002F>\n– maintain rider’s log entries, while optionally specifying some of them as public.\u003C\u002Fp>\n\u003Cp>Structured information is supported for the following types of trips:\u003Cbr \u002F>\n– Bike trips;\u003Cbr \u002F>\n– Hiking trips;\u003Cbr \u002F>\n– Train rides.\u003C\u002Fp>\n\u003Cp>For bike trips the following fields are available:\u003Cbr \u002F>\n– Total distance;\u003Cbr \u002F>\n– Total climb;\u003Cbr \u002F>\n– Difficulty level;\u003Cbr \u002F>\n– Access information (how to get to the start point and return from the end point);\u003Cbr \u002F>\n– Open during seasons;\u003Cbr \u002F>\n– Path surface type (eg: dirt, asphalt, grass etc.);\u003Cbr \u002F>\n– Recommended bike type (eg: MTB, road bike etc.).\u003C\u002Fp>\n\u003Cp>For hiking trips the following fields are available:\u003Cbr \u002F>\n– Total distance;\u003Cbr \u002F>\n– Total climb;\u003Cbr \u002F>\n– Difficulty level;\u003Cbr \u002F>\n– Access information;\u003Cbr \u002F>\n– Open during seasons;\u003Cbr \u002F>\n– Path surface type;\u003Cbr \u002F>\n– Route markers.\u003C\u002Fp>\n\u003Cp>For train rides the following fields are available:\u003Cbr \u002F>\n– Total distance;\u003Cbr \u002F>\n– How many trains were exchanged;\u003Cbr \u002F>\n– Line gauge (mm);\u003Cbr \u002F>\n– Railroad operators used;\u003Cbr \u002F>\n– Line status (closed, operational etc.);\u003Cbr \u002F>\n– Whether the line is electrified or not;\u003Cbr \u002F>\n– Line type.\u003C\u002Fp>\n\u003Ch3>Requirements\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>PHP version 8.0.0 or greater (as of version 0.3.2);\u003C\u002Fli>\n\u003Cli>MySQL version 5.7 or greater (with spatial support);\u003C\u002Fli>\n\u003Cli>WordPress 6.0.0 or greater;\u003C\u002Fli>\n\u003Cli>libxml extension;\u003C\u002Fli>\n\u003Cli>SimpleXml extension;\u003C\u002Fli>\n\u003Cli>mysqli extension;\u003C\u002Fli>\n\u003Cli>mbstring – not strictly required, but recommended;\u003C\u002Fli>\n\u003Cli>zlib – not strictly required, but recommended.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Multi language\u003C\u002Fh3>\n\u003Cp>Available in English, Romanian, French and (since 0.3.2) German.\u003C\u002Fp>\n\u003Ch3>Helping out\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>by contributing: head over tot he project’s GitHub page: \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Falexboia\u002FWP-Trip-Summary\" rel=\"nofollow ugc\">https:\u002F\u002Fgithub.com\u002Falexboia\u002FWP-Trip-Summary\u003C\u002Fa>;\u003C\u002Fli>\n\u003Cli>by donating: \u003Ca href=\"https:\u002F\u002Fko-fi.com\u002Falexandruboia\" rel=\"nofollow ugc\">https:\u002F\u002Fko-fi.com\u002Falexandruboia\u003C\u002Fa>;\u003C\u002Fli>\n\u003Cli>support my paid work: \u003Ca href=\"https:\u002F\u002Falexboia.gumroad.com\u002F\" rel=\"nofollow ugc\">https:\u002F\u002Falexboia.gumroad.com\u002F\u003C\u002Fa>.\u003C\u002Fli>\n\u003C\u002Ful>\n","A WordPress trip summary plugin to help travel bloggers manage and display structured information about their train rides and biking or hiking trips.",20,4003,90,4,"2024-04-30T10:18:00.000Z","6.5.8","6.0.0","8.0.0",[18,20,95,22,54],"summary","https:\u002F\u002Fgithub.com\u002Falexboia\u002FWP-Trip-Summary","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-trip-summary.0.3.2.zip",92,{"slug":100,"name":101,"version":102,"author":103,"author_profile":104,"description":105,"short_description":106,"active_installs":107,"downloaded":108,"rating":11,"num_ratings":11,"last_updated":109,"tested_up_to":110,"requires_at_least":111,"requires_php":112,"tags":113,"homepage":50,"download_link":116,"security_score":57,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"mhs-travel-map","My Hitchhiking Spot Travel Map (MHS Travel Map)","1.5.1","daemmi","https:\u002F\u002Fprofiles.wordpress.org\u002Fdaemmi\u002F","\u003Cp>Create your travel map with use of \u003Ca href=\"https:\u002F\u002Fdevelopers.google.com\u002Fmaps\u002Fterms\" rel=\"nofollow ugc\">google maps api\u003C\u002Fa>\u003Cbr \u002F>\nby adding coordinates to a map, make your route public, write a story for each\u003Cbr \u002F>\ncoordinate and import backup files from the Android app\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fplay.google.com\u002Fstore\u002Fapps\u002Fdetails?id=com.myhitchhikingspots\" rel=\"nofollow ugc\">My Hitchhiking Spots\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cp>Got to \u003Ca href=\"http:\u002F\u002Fmhs-tm.aenywhere.de\" rel=\"nofollow ugc\">the demo page\u003C\u002Fa> to have a look of a couple of example maps and to try out the backend!\u003C\u002Fp>\n\u003Cul>\n\u003Cli>create you own travel map with use of google maps\u003C\u002Fli>\n\u003Cli>import backup files from the Android app \u003Ccode>My Hitchhiking Spots\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>add coordinates to the route\u003C\u002Fli>\n\u003Cli>add coordinates which are not on the route\u003C\u002Fli>\n\u003Cli>write to each coordinate a story by using the wordpress text editor\u003C\u002Fli>\n\u003Cli>it will work with shortcodes\u003C\u002Fli>\n\u003Cli>add to each coordinate start time and waiting time\u003C\u002Fli>\n\u003Cli>for each route the total waiting time, the number of lifts, journey time and distance will be calculated\u003C\u002Fli>\n\u003Cli>geocode your coordinate automatically\u003C\u002Fli>\n\u003Cli>set the colour of each route \u003C\u002Fli>\n\u003Cli>or set a route to a predefined transportation class\u003C\u002Fli>\n\u003Cli>get a whole statistic about all route in one map\u003C\u002Fli>\n\u003C\u002Ful>\n","Create your travel map with use of google maps and import backups from the Android app My Hitchhiking Spots",10,1981,"2020-03-21T15:58:00.000Z","5.3.21","4.4.0","5.2.0",[52,114,115,20,22],"hitchhike","hitchhiking","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fmhs-travel-map.1.5.1.zip",{"slug":118,"name":119,"version":120,"author":121,"author_profile":122,"description":123,"short_description":124,"active_installs":107,"downloaded":125,"rating":11,"num_ratings":11,"last_updated":126,"tested_up_to":127,"requires_at_least":128,"requires_php":50,"tags":129,"homepage":132,"download_link":133,"security_score":57,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"posts-on-a-map","Posts on a map","1.1","jean","https:\u002F\u002Fprofiles.wordpress.org\u002Fjeancaffou\u002F","\u003Cp>This plugin is intended for travel blogs, hiking blogs, where you want to show a map of a location you are writing about.\u003C\u002Fp>\n\u003Cp>It’s really simple. It just adds an extra field in the WordPress admin editor, and if you enter GPS coordinates, it will add a map in the bottom of the post.\u003C\u002Fp>\n\u003Cp>Acceptable types of GPS coordinate formats:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n\u003Cp>N 45° 46.000 E 014° 12.000\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>S 45° 46′ 1″ W 014° 12′ 1″\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>+46° 22′ 38.11″, -96° 9′ 55.90″\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>N 45.766667 E 014.200000\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>-45.766667,014.200000\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>See the plugin in action here:\u003Cbr \u002F>\nhttp:\u002F\u002Fana.kafol.net\u002Fplaninska-knjizica\u002F\u003C\u002Fp>\n","Add a custom field for GPS coordinates in the post editor and show a map under under the content of the post.",1823,"2012-11-15T19:31:00.000Z","3.4.2","3.3",[52,130,19,131,22],"gps","places","http:\u002F\u002Fwww.kafol.net","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fposts-on-a-map.zip",{"attackSurface":135,"codeSignals":202,"taintFlows":213,"riskAssessment":214,"analyzedAt":225},{"hooks":136,"ajaxHandlers":190,"restRoutes":191,"shortcodes":200,"cronEvents":201,"entryPointCount":31,"unprotectedCount":11},[137,143,148,152,156,160,164,168,173,177,181,185],{"type":138,"name":139,"callback":140,"file":141,"line":142},"action","rest_api_init","register_routes","includes\\class-mapthread-elevation-api.php",25,{"type":138,"name":144,"callback":145,"file":146,"line":147},"admin_menu","add_settings_page","includes\\class-mapthread-settings.php",106,{"type":138,"name":149,"callback":150,"file":146,"line":151},"admin_init","register_settings",107,{"type":138,"name":153,"callback":154,"file":146,"line":155},"admin_enqueue_scripts","enqueue_settings_scripts",108,{"type":138,"name":157,"callback":158,"file":159,"line":66},"init","register_blocks","includes\\class-mapthread.php",{"type":138,"name":161,"callback":162,"file":159,"line":163},"wp_enqueue_scripts","enqueue_frontend_assets",43,{"type":138,"name":165,"callback":166,"file":159,"line":167},"enqueue_block_editor_assets","localize_editor_assets",46,{"type":169,"name":170,"callback":171,"file":159,"line":172},"filter","body_class","add_body_class",49,{"type":169,"name":174,"callback":175,"file":159,"line":176},"upload_mimes","allow_gpx_uploads",52,{"type":169,"name":178,"callback":179,"priority":107,"file":159,"line":180},"wp_check_filetype_and_ext","check_gpx_filetype",53,{"type":169,"name":182,"callback":183,"priority":107,"file":159,"line":184},"plugin_row_meta","add_plugin_row_meta",56,{"type":138,"name":186,"callback":187,"file":188,"line":189},"plugins_loaded","mapthread_init","mapthread.php",44,[],[192],{"namespace":193,"route":194,"methods":195,"callback":197,"permissionCallback":198,"file":141,"line":199},"mapthread\u002Fv1","\u002Felevation",[196],"POST","get_elevation","closure",32,[],[],{"dangerousFunctions":203,"sqlUsage":204,"outputEscaping":206,"fileOperations":31,"externalRequests":31,"nonceChecks":11,"capabilityChecks":211,"bundledLibraries":212},[],{"prepared":11,"raw":11,"locations":205},[],{"escaped":142,"rawEcho":31,"locations":207},[208],{"file":146,"line":209,"context":210},230,"raw output",2,[],[],{"summary":215,"deductions":216},"The \"mapthread\" v1.6.1 plugin exhibits a generally strong security posture based on the provided static analysis. The absence of any recorded vulnerabilities or CVEs in its history is a significant positive indicator.  The plugin demonstrates good practices by utilizing prepared statements for all SQL queries and properly escaping a high percentage of its output. Furthermore, its attack surface is remarkably small, with no unprotected entry points identified in AJAX handlers, REST API routes, shortcodes, or cron events.\n\nHowever, a few areas warrant attention. The lack of nonce checks, even with the limited number of entry points, is a concern, as it could potentially be exploited if an attacker can trick a user into triggering an action. The presence of file operations and external HTTP requests, while not explicitly flagged as problematic in the taint analysis (which found no unsanitized paths), inherently introduces potential risks. These operations should be meticulously reviewed to ensure they are not susceptible to path traversal or SSRF vulnerabilities.\n\nIn conclusion, \"mapthread\" v1.6.1 is a relatively secure plugin, primarily due to its minimal attack surface and sound handling of SQL and output escaping. The primary area for improvement and potential risk lies in the absence of nonce checks and the careful scrutiny of its file and HTTP request operations to ensure complete robustness against potential exploits.",[217,220,223],{"reason":218,"points":219},"Missing nonce checks",5,{"reason":221,"points":222},"Presence of file operations",3,{"reason":224,"points":222},"Presence of external HTTP requests","2026-03-17T06:56:16.334Z",{"wat":227,"direct":234},{"assetPaths":228,"generatorPatterns":230,"scriptPaths":231,"versionParams":232},[229],"\u002Fwp-content\u002Fplugins\u002Fmapthread\u002Fincludes\u002Fjs\u002Fmapthread-settings.js",[],[229],[233],"mapthread-settings?ver=",{"cssClasses":235,"htmlComments":236,"htmlAttributes":237,"restEndpoints":238,"jsGlobals":239,"shortcodeOutput":240},[],[],[],[],[],[]]