Pleaseup Hotspots lets you place interactive hotspots directly onto images stored in your Media Library. Each hotspot can display a rich HTML layer (tooltip) when clicked or hovered, making it perfect for product highlights, interactive infographics, wayfinding maps, and more.
[wphs_image id="123"].[wphs_gallery id="X"].prefers-reduced-motion support.[wphs_image id="ATTACHMENT_ID"]
Optional attributes:
size — image size (default: large). Accepts any registered WordPress image size.class — additional CSS class added to the <img> tag.
[wphs_gallery id=”GALLERY_ID” nav=”dots+arrows” cols_desktop=”3″ cols_mobile=”1″]
Themes and plugins can integrate via the following filters and actions:
wphs_default_settings (filter) — modify the default plugin options.wphs_hotspot_data (filter) — modify the hotspot list before rendering.wphs_tooltip_html (filter) — modify the per-hotspot tooltip HTML.wphs_allowed_iframe_attrs (filter) — extend the iframe allowlist used by wp_kses.wphs_allowed_iframe_hosts (filter) — extend the host allowlist for iframe src attributes.wphs_oembed_providers (filter) — enable/disable server-side oEmbed providers.wphs_hotspot_aria_label (filter) — override the default screen-reader label.wphs_before_render_image (action) — fire just before [wphs_image] outputs HTML.wphs_after_save_hotspots (action) — fire after hotspots are persisted.wphs_loaded (action) — fire after the plugin has booted all subsystems.This plugin contacts third-party services in two distinct flows. Both flows are triggered only by an authenticated editor (with edit_posts) pasting a URL inside a tooltip; no data leaves the site automatically.
Server-side oEmbed resolution (wp_oembed_get)
When the editor pastes a URL from one of the supported oEmbed providers into a tooltip, the plugin calls the provider’s oEmbed endpoint server-side via WordPress core’s wp_oembed_get() to retrieve the embed HTML. The URL pasted by the editor is sent to the provider; no other data is sent. Supported providers:
Client-side iframe rendering
When a tooltip containing an oEmbed iframe is opened on a public page, the visitor’s browser loads the iframe directly from the provider’s CDN (e.g. youtube.com, player.vimeo.com, open.spotify.com). This is standard browser behavior for any embedded media; the plugin does not add any tracking on top.
The set of allowed iframe hosts is filterable via the wphs_allowed_iframe_hosts filter. Hosts not in the allowlist are stripped from tooltip HTML on save.