{"id":273618,"date":"2026-03-24T12:18:30","date_gmt":"2026-03-24T12:18:30","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/tour-itinerary-map\/"},"modified":"2026-04-17T05:09:53","modified_gmt":"2026-04-17T05:09:53","slug":"tour-itinerary-map","status":"publish","type":"plugin","link":"https:\/\/mfe.wordpress.org\/plugins\/tour-itinerary-map\/","author":20183450,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.1","stable_tag":"trunk","tested":"6.9.4","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"Tour Itinerary Map","header_author":"Bhautik Parejiya","header_description":"Animated itinerary maps with custom markers for tours.","assets_banners_color":"e7f1fc","last_updated":"2026-04-17 05:09:53","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":266,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"bhautikparejiya","date":"2026-03-24 12:24:18"}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3490527,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128}},"assets_banners":{"banner-772x250.png":{"filename":"banner-772x250.png","revision":3490543,"resolution":"772x250","location":"assets","locale":"","width":1544,"height":500}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[785,125417,2909,10346,249],"plugin_category":[39,49,50],"plugin_contributors":[258521],"plugin_business_model":[],"class_list":["post-273618","plugin","type-plugin","status-publish","hentry","plugin_tags-animation","plugin_tags-itinerary","plugin_tags-map","plugin_tags-route","plugin_tags-travel","plugin_category-business","plugin_category-maps-and-location","plugin_category-media","plugin_contributors-bhautikparejiya","plugin_committers-bhautikparejiya"],"banners":{"banner":"https:\/\/ps.w.org\/tour-itinerary-map\/assets\/banner-772x250.png?rev=3490543","banner_2x":false,"banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/tour-itinerary-map\/assets\/icon-128x128.png?rev=3490527","icon_2x":false,"generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>Tour Itinerary Map allows you to display interactive animated routes on maps using MapLibre.\nEasily show tour routes, travel itineraries, and paths with customizable markers, colors, and animation settings.<\/p>\n\n<p>The plugin includes a modern admin dashboard to configure:\n* Map provider and style\n* Start, end, waypoint, and moving markers\n* Route colors and default marker colors\n* Animation speed, looping, and auto-start behavior<\/p>\n\n<h3>Usage<\/h3>\n\n<p>This plugin provides the following shortcode:<\/p>\n\n<p>[tour_itinerary_map]<\/p>\n\n<p>The shortcode is designed to work on single pages of supported post types only.<\/p>\n\n<p>You must first enable the desired post types from the plugin settings in the admin dashboard. Once enabled, add the shortcode inside the content of that post type (or its single template).<\/p>\n\n<p>The map will automatically load and display route data dynamically based on the current post.<\/p>\n\n<p>Perfect for travel websites, tour operators, bloggers, and itinerary-based content.<\/p>\n\n<h3>External Services<\/h3>\n\n<p>This plugin connects to the following external services:<\/p>\n\n<h4>Stadia Maps<\/h4>\n\n<p>The plugin uses Stadia Maps to load map tile styles (visual appearance of the map). When a visitor views a page containing the map shortcode, their browser connects to Stadia Maps servers to download the map style and tile data.<\/p>\n\n<ul>\n<li><strong>What is sent:<\/strong> The visitor's IP address (standard HTTP request), the selected map style name, and an optional API key if configured in the plugin settings.<\/li>\n<li><strong>When it is sent:<\/strong> Every time a page containing the [tour_itinerary_map] shortcode is loaded in a visitor's browser.<\/li>\n<li><strong>Service provider:<\/strong> Stadia Maps<\/li>\n<li><strong>Terms of Service:<\/strong> https:\/\/stadiamaps.com\/terms-of-service\/<\/li>\n<li><strong>Privacy Policy:<\/strong> https:\/\/stadiamaps.com\/privacy-policy\/<\/li>\n<\/ul>\n\n<h4>MapLibre GL JS (Bundled Library)<\/h4>\n\n<p>This plugin bundles MapLibre GL JS, an open-source JavaScript library for rendering interactive maps. MapLibre itself does not transmit any data to external servers \u2014 all rendering is done client-side in the visitor's browser.<\/p>\n\n<ul>\n<li><strong>Source code:<\/strong> https:\/\/github.com\/maplibre\/maplibre-gl-js<\/li>\n<li><strong>License:<\/strong> BSD 3-Clause License<\/li>\n<\/ul>\n\n<h4>Turf.js (Bundled Library)<\/h4>\n\n<p>This plugin bundles Turf.js, an open-source geospatial analysis library used for route animation calculations (smoothing, interpolation). Turf.js does not communicate with any external server; all processing is done client-side.<\/p>\n\n<ul>\n<li><strong>Source code:<\/strong> https:\/\/github.com\/Turfjs\/turf<\/li>\n<li><strong>License:<\/strong> MIT License<\/li>\n<\/ul>\n\n<h4>Lucide Icons v0.577.0 (Bundled Library)<\/h4>\n\n<p>This plugin bundles Lucide, an open-source icon library used in the admin interface. Lucide does not communicate with any external server.<\/p>\n\n<ul>\n<li><strong>Source code:<\/strong> https:\/\/github.com\/lucide-icons\/lucide<\/li>\n<li><strong>License:<\/strong> ISC License<\/li>\n<\/ul>\n\n<h3>Source Code &amp; Build Tools<\/h3>\n\n<p>The following files included in this plugin are compiled or minified builds of third-party open-source libraries. The original human-readable source code for each is publicly available at the links provided above in the External Services section.<\/p>\n\n<ul>\n<li>assets\/js\/maplibre-gl.js \u2014 MapLibre GL JS (https:\/\/github.com\/maplibre\/maplibre-gl-js)<\/li>\n<li>assets\/css\/maplibre-gl.css \u2014 MapLibre GL JS (https:\/\/github.com\/maplibre\/maplibre-gl-js)<\/li>\n<li>assets\/js\/turf.js \u2014 Turf.js (https:\/\/github.com\/Turfjs\/turf)<\/li>\n<li>admin\/assets\/lucide.js \u2014 Lucide v0.577.0 (https:\/\/github.com\/lucide-icons\/lucide)<\/li>\n<\/ul>\n\n<p>All other JavaScript and CSS files in this plugin are unminified, human-readable source files authored specifically for this plugin:<\/p>\n\n<ul>\n<li>public\/js\/touritma-map.js \u2014 Frontend map initialisation logic<\/li>\n<li>public\/js\/metabox.js \u2014 Admin metabox interactions<\/li>\n<li>public\/js\/metabox.css \u2014 Admin metabox styles<\/li>\n<li>admin\/assets\/settings.js \u2014 Admin settings page interactions<\/li>\n<li>admin\/assets\/settings.css \u2014 Admin settings page styles<\/li>\n<li>assets\/css\/map.css \u2014 Frontend map styles<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>tour-itinerary-map<\/code> 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>Go to <strong>Itinerary Map<\/strong> in the WordPress admin menu to configure settings.<\/li>\n<\/ol>\n\n<!--section=changelog-->\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Updated Lucide icon library to v0.577.0<\/li>\n<li>Moved all inline JavaScript and CSS to properly enqueued external files<\/li>\n<li>Renamed all function\/option\/constant prefixes from \"tim\" to \"touritma\" (\u22654 chars, per WP guidelines)<\/li>\n<li>Improved data sanitization and validation on metabox save (wp_unslash + per-field sanitize_text_field + numeric range validation)<\/li>\n<li>Added External Services disclosure to readme<\/li>\n<li>Added Source Code documentation links to readme<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<li>Interactive map rendering using MapLibre<\/li>\n<li>Custom markers with image and color fallback support<\/li>\n<li>Route animation with speed and loop controls<\/li>\n<li>Modern admin settings dashboard<\/li>\n<\/ul>","raw_excerpt":"Display interactive animated tour routes with MapLibre, with customizable markers, colors, and animation controls.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/mfe.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/273618","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mfe.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/mfe.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/mfe.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=273618"}],"author":[{"embeddable":true,"href":"https:\/\/mfe.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/bhautikparejiya"}],"wp:attachment":[{"href":"https:\/\/mfe.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=273618"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/mfe.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=273618"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/mfe.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=273618"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/mfe.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=273618"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/mfe.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=273618"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/mfe.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=273618"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}