=== Rusnet Interactive Map for Yandex Maps === Contributors: rusnet Donate link: https://rusnet.su/resheniya/interactivemap-for-yandex-maps/ Tags: yandex maps, interactive, marker, cluster, custom icons Requires at least: 5.0 Tested up to: 6.9 Stable tag: 2.1.9 License: GPLv2 or later License URI: https://www.gnu.org/licenses/gpl-2.0.html A simple yet powerful plugin to add interactive Yandex Maps to WordPress with markers, clustering, and filtering. == Description == **Rusnet Interactive Map** is a full‑featured solution for integrating Yandex Maps into WordPress. The plugin lets you easily create maps with custom markers, group them into clusters, filter by categories, and display detailed information about each object in a side panel. = Main features = * **Custom Post Type “Marker”** – all markers are stored as individual posts, managed via the standard WordPress interface. * **Marker Categories** – group markers by category, set a custom icon and color for each category. * **Flexible Map Settings** – center, zoom, type (scheme, satellite, hybrid), height, set of controls. * **Clustering** – automatically group nearby markers into clusters; adjust grid size and cluster color. * **Information Panel** – when a marker is clicked, a panel appears showing the title, description, image gallery, and a link. * **Category Filter** – buttons for quickly switching between marker categories; fully customisable appearance. * **TinyMCE Shortcode Editor** – easily insert and edit maps directly in the visual editor. * **Multilingual** – the plugin is fully translation‑ready and respects the WordPress locale. = External services = This plugin uses the **Yandex.Maps API** to display interactive maps. When a map is loaded, your visitor's browser connects to `api-maps.yandex.ru` and transmits the map parameters (center coordinates, zoom level, etc.) and the user's locale. No personal data is sent by the plugin itself. For more information, please refer to Yandex's [Terms of Use](https://yandex.com/legal/maps_api/) and [Privacy Policy](https://yandex.com/legal/confidential/). = Requirements = * WordPress 5.0 or higher. * PHP 7.2 or higher. * [Yandex.Maps API key](https://developer.tech.yandex.com/services/) (JavaScript API and HTTP Geocoder) – enter it in the plugin settings. = Installation = 1. Upload the plugin folder to `/wp-content/plugins/`. 2. Activate the plugin via the “Plugins” menu. 3. Go to **Rusnet Map** to configure the settings. 4. Enter your Yandex.Maps API key (if needed). 5. Create markers under the **Markers** menu. 6. Insert the `[rusnetim_map]` shortcode into a post or page. == Frequently Asked Questions == = Where do I get a Yandex.Maps API key? = Get one from the [Yandex Technologies](https://developer.tech.yandex.com/services/) page, choosing “JavaScript API and HTTP Geocoder”. = Why doesn’t search work on the map? = Search is only available when an API key is provided. Make sure the key is entered correctly in the settings and hasn’t expired. = Can I use my own images for icons? = Yes, you can upload custom images for markers or use the built‑in “My icon set” to create a collection of icons. = Can I hide the author link? = Yes, there is an option “Author link” in the settings to disable the link to the developer’s website. == Screenshots == 1. General plugin settings: configure API keys, default map options, and global behavior. 2. Clustering settings: enable or disable marker clustering, adjust cluster radius, and customize cluster appearance. 3. Info panel settings: control the layout, content, and behavior of the info panel that appears on marker click. 4. Category filter settings: manage marker categories and filter options to help users navigate markers. 5. Marker settings: define default marker icons, sizes, and behaviors for all markers. 6. Markers list: overview of all created markers with quick edit, delete, and search functions. 7. Add/Edit marker: form to create or modify marker details, including title, description, coordinates, and category. 8. Frontend map display: example of how the interactive map appears on the site with markers and clusters. == Changelog == = 2.1.9 = * Fixed mobile info panel issue: when opening a marker with left-side panel, it no longer shifts to the right or goes off-screen. * Fixed panel “sticking” after closing on mobile devices – `left-side` and `right-side` classes are now properly removed, and inline styles are reset. * Improved slide-in animation: transform now correctly respects the chosen side. * Optimized `resize` event handling when the screen orientation changes. = 2.1.8 = * Added Russian translation. = 2.1.7 = * Code cleanup: removed debug console.log statements and redundant HTML comments. * Full internationalization: all strings are now translatable. The plugin is ready for translation. = 2.1.6 = * Fixed marker filtering in the category dropdown: selected category now correctly displays markers, including child categories when a parent category is chosen (added hierarchy support similar to button filters). * Fixed `ReferenceError: cat is not defined` that occurred when using the dropdown filter. * Improved category string normalization to lowercase to avoid case‑sensitive errors. * Enhanced event handling for the dropdown filter – uses event delegation to ensure it works even with dynamically created elements; filtering is performed directly, independent of button filters. * Added compatibility with custom select libraries (e.g., Nice Select): resolved conflict that blocked the `change` event; synchronised the hidden select value with the visual component; added CSS rules to hide the third‑party wrapper and force display of the native `