{"id":308343,"date":"2026-05-09T23:59:31","date_gmt":"2026-05-09T23:59:31","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/meetpure-events\/"},"modified":"2026-05-15T13:26:04","modified_gmt":"2026-05-15T13:26:04","slug":"meetpure-events","status":"publish","type":"plugin","link":"https:\/\/ne.wordpress.org\/plugins\/meetpure-events\/","author":2133102,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"0.2.0","stable_tag":"0.2.0","tested":"6.9.4","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"MeetPure Events","header_author":"MeetPure Events Team","header_description":"A plugin to display MeetPure event information.","assets_banners_color":"","last_updated":"2026-05-15 13:26:04","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/meetpure.events\/integrations","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":66,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"0.1.28":{"tag":"0.1.28","author":"rajuru","date":"2026-05-09 23:59:08"},"0.2.0":{"tag":"0.2.0","author":"rajuru","date":"2026-05-15 13:26:04"}},"upgrade_notice":{"0.2.0":"<p>Adds event grid pagination, refreshes the settings UI, and tightens API token validation. Review any shortcode usage that relied on <code>team_id<\/code>.<\/p>","0.1.4":"<p>Compatibility update for WordPress 6.9.<\/p>","0.1.2":"<p>Fixes events grid spacing and adds <code>min_width<\/code> attribute. Recommended.<\/p>","0.1.1":"<p>Container-width responsive grid; cards adapt to their own width.<\/p>","0.1.0":"<p>Initial release.<\/p>"},"ratings":[],"assets_icons":[],"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["0.1.28","0.2.0"],"block_files":[],"assets_screenshots":[],"screenshots":[],"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[4745,31552,1486,262434,80],"plugin_category":[40,43],"plugin_contributors":[80408],"plugin_business_model":[],"class_list":["post-308343","plugin","type-plugin","status-publish","hentry","plugin_tags-event-calendar","plugin_tags-event-listing","plugin_tags-events","plugin_tags-meetpure","plugin_tags-shortcode","plugin_category-calendar-and-events","plugin_category-customization","plugin_contributors-rajuru","plugin_committers-rajuru"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/meetpure-events.svg","icon_2x":false,"generated":true},"screenshots":[],"raw_content":"<!--section=description-->\n<p>MeetPure Events connects your WordPress site to the <a href=\"https:\/\/meetpure.events\">MeetPure<\/a> platform. It fetches your published events via the MeetPure API and displays them in a beautiful, responsive card grid. Individual events open in a full detail page \u2014 with cover image, date, location, description, speakers, agenda, and a CTA button \u2014 all without leaving your site.<\/p>\n\n<p><strong>Features<\/strong><\/p>\n\n<ul>\n<li>Responsive event card grid with cover image, date badge, event type, and CTA button<\/li>\n<li>Full single event detail page: description, location, speakers, agenda<\/li>\n<li>Automatic page title and featured image taken from the event<\/li>\n<li>Configurable cards-per-row, event count, and section heading<\/li>\n<li>Support for past events toggle<\/li>\n<li>Flexible link routing: internal detail page or direct link to meetpure.events<\/li>\n<li>5-minute transient cache to minimise API calls<\/li>\n<li>Theme-inheriting styles via CSS custom properties<\/li>\n<\/ul>\n\n<h3>Configuration<\/h3>\n\n<p>Go to <strong>Settings \u2192 MeetPure Events<\/strong> and fill in:<\/p>\n\n<ul>\n<li><strong>API Token<\/strong> \u2014 Your MeetPure API token. For now, request one from support@meetpure.com and provide the exact Team ID configured in the plugin so the key is bound only to that team. The plugin rejects keys with write scope and validates team access via <code>\/auth\/info<\/code>.<\/li>\n<li><strong>Team ID<\/strong> \u2014 The team whose events are displayed. The API key must be bound only to this Team ID.<\/li>\n<li><strong>Events Per Page<\/strong> \u2014 Number of events requested per grid page (1\u2013100, default 10).<\/li>\n<li><strong>Single Event Page<\/strong> \u2014 Select the page that contains <code>[meetpure_event]<\/code> for individual event detail views.<\/li>\n<\/ul>\n\n<h3>Usage<\/h3>\n\n<h4>Events Grid<\/h4>\n\n<p>Place the following shortcode on any page or post to display a grid of upcoming events:<\/p>\n\n<pre><code>[meetpure_events]\n<\/code><\/pre>\n\n<p><strong>Available attributes:<\/strong><\/p>\n\n<ul>\n<li><code>count<\/code> \u2014 Override Events Per Page for this grid (1\u2013100). Default: <em>(from settings)<\/em><\/li>\n<li><code>title<\/code> \u2014 Section heading. Pass <code>title=\"\"<\/code> to hide it. Default: <code>Events<\/code><\/li>\n<li><code>per_row<\/code> \u2014 Cards per row on large screens (1\u20136). Default: <code>3<\/code><\/li>\n<li><code>include_past<\/code> \u2014 Set to <code>\"true\"<\/code> to include past events. Default: <code>false<\/code><\/li>\n<li><code>link_to<\/code> \u2014 Where cards link: <code>auto<\/code>, <code>internal<\/code>, or <code>external<\/code>. Default: <code>auto<\/code><\/li>\n<li><p><code>page_param<\/code> \u2014 Query parameter used for pagination. Change only when multiple event grids appear on the same page. Default: <code>meetpure_events_page<\/code><\/p>\n\n<p>link_to values:<\/p><\/li>\n<li><p><code>auto<\/code> \u2014 Links to the Single Event Page if configured, otherwise to meetpure.events.<\/p><\/li>\n<li><code>internal<\/code> \u2014 Always links to the local Single Event Page.<\/li>\n<li><code>external<\/code> \u2014 Always links to meetpure.events.<\/li>\n<\/ul>\n\n<p><strong>Examples:<\/strong><\/p>\n\n<pre><code>[meetpure_events]\n\n[meetpure_events count=\"6\" per_row=\"2\" title=\"Upcoming Events\"]\n\n[meetpure_events include_past=\"true\" title=\"All Events\"]\n\n[meetpure_events link_to=\"external\"]\n<\/code><\/pre>\n\n<h4>Single Event Detail<\/h4>\n\n<p>Add the following shortcode to a dedicated page to render a full event detail view:<\/p>\n\n<pre><code>[meetpure_event]\n<\/code><\/pre>\n\n<p>When accessed via <code>?meetpure_event=EVENT_ID<\/code> in the URL (linked automatically from the grid), it displays the matching event. You can also hardcode a specific event:<\/p>\n\n<pre><code>[meetpure_event event_id=\"VoUfH\"]\n<\/code><\/pre>\n\n<p><strong>Available attributes:<\/strong><\/p>\n\n<ul>\n<li><code>event_id<\/code> \u2014 MeetPure event ID. Default: <em>(read from URL query string)<\/em><\/li>\n<\/ul>\n\n<h4>Setting up Individual Event Pages<\/h4>\n\n<ol>\n<li>Create a new WordPress page (e.g. \"Event\") and add <code>[meetpure_event]<\/code> to its content. Publish it.<\/li>\n<li>In <strong>Settings \u2192 MeetPure Events<\/strong>, select that page under <strong>Single Event Page<\/strong>. Save.<\/li>\n<li>Event cards in your grid will now link to <code>yoursite.com\/event\/?meetpure_event=EVENT_ID<\/code>.<\/li>\n<li>The page title, featured image, and document title are automatically replaced with the event's data.<\/li>\n<\/ol>\n\n<h3>External Services<\/h3>\n\n<p>This plugin connects to the <strong>MeetPure Events platform<\/strong> (<code>https:\/\/meetpure.events<\/code>) to fetch and display event information.<\/p>\n\n<h4>MeetPure Events API<\/h4>\n\n<p><strong>What it is used for:<\/strong> The plugin retrieves your team's published events and individual event details from the MeetPure Events platform API so they can be displayed on your WordPress site via the <code>[meetpure_events]<\/code> and <code>[meetpure_event]<\/code> shortcodes.<\/p>\n\n<p><strong>What data is sent and when:<\/strong><\/p>\n\n<ul>\n<li>When the <code>[meetpure_events]<\/code> shortcode is rendered, the plugin sends an HTTP GET request to <code>https:\/\/meetpure.events\/api\/v1\/events<\/code> containing: your API token (in the <code>X-API-Key<\/code> header), your team ID (in the <code>X-Team-Id<\/code> header), a requested page number and page size, a status filter (<code>published<\/code>), and optionally a start date to filter out past events. API responses are cached for 5 minutes using WordPress transients; no request is made while a valid cache entry exists.<\/li>\n<li>When the <code>[meetpure_event]<\/code> shortcode is rendered (or the single event detail page is loaded), the plugin sends an HTTP GET request to <code>https:\/\/meetpure.events\/api\/v1\/events\/{event_id}<\/code> containing your API token (in the <code>X-API-Key<\/code> header). This request is also cached for 5 minutes.<\/li>\n<li>No visitor\/end-user data is collected or transmitted \u2014 only the site owner's API credentials and the requested event identifiers are sent.<\/li>\n<\/ul>\n\n<p><strong>Service provider:<\/strong> MeetPure Events (<code>https:\/\/meetpure.events<\/code>)<\/p>\n\n<ul>\n<li><a href=\"https:\/\/meetpure.com\/tou\">Terms of Service<\/a><\/li>\n<li><a href=\"https:\/\/meetpure.com\/privacy-policy\">Privacy Policy<\/a><\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>In your WordPress admin go to <strong>Plugins \u2192 Add New<\/strong>.<\/li>\n<li>Search for <strong>MeetPure Events<\/strong> or click <strong>Upload Plugin<\/strong> and select the ZIP file.<\/li>\n<li>Click <strong>Install Now<\/strong>, then <strong>Activate<\/strong>.<\/li>\n<li>Go to <strong>Settings \u2192 MeetPure Events<\/strong> and enter your API Token and Team ID.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"where%20do%20i%20find%20my%20api%20token%20and%20team%20id%3F\"><h3>Where do I find my API Token and Team ID?<\/h3><\/dt>\n<dd><p>For now, API tokens are created by the MeetPure Events support team. Email support@meetpure.com to request a token, and include the exact Team ID configured in your plugin settings so the key is bound only to that team.<\/p><\/dd>\n<dt id=\"events%20are%20not%20showing%20up%20%E2%80%94%20what%20should%20i%20check%3F\"><h3>Events are not showing up \u2014 what should I check?<\/h3><\/dt>\n<dd><ol>\n<li>Confirm your API Token and Team ID are correct in the plugin settings.<\/li>\n<li>Make sure your team has published events.<\/li>\n<li>If you've recently saved settings, the cache has been cleared. Try refreshing the page.<\/li>\n<\/ol><\/dd>\n<dt id=\"can%20i%20show%20past%20events%3F\"><h3>Can I show past events?<\/h3><\/dt>\n<dd><p>Yes \u2014 add <code>include_past=\"true\"<\/code> to the shortcode: <code>[meetpure_events include_past=\"true\"]<\/code><\/p><\/dd>\n<dt id=\"how%20does%20caching%20work%3F\"><h3>How does caching work?<\/h3><\/dt>\n<dd><p>API responses are cached for 5 minutes using WordPress transients. Saving the plugin settings clears the cache immediately.<\/p><\/dd>\n<dt id=\"can%20i%20customise%20the%20html%20layout%20of%20the%20event%20cards%20or%20detail%20page%3F\"><h3>Can I customise the HTML layout of the event cards or detail page?<\/h3><\/dt>\n<dd><p>Yes \u2014 the plugin supports template overrides. Copy the template you want to change from the plugin's <code>templates\/<\/code> folder into a <code>meetpure-events\/<\/code> folder inside your active theme, then edit freely. Your changes survive plugin updates.<\/p>\n\n<pre><code>wp-content\/themes\/your-theme\/meetpure-events\/events-list.php   \u2190 events grid\nwp-content\/themes\/your-theme\/meetpure-events\/event-template.php \u2190 single event detail\n<\/code><\/pre>\n\n<p>Child themes are checked before parent themes.<\/p><\/dd>\n<dt id=\"can%20i%20customise%20the%20styles%3F\"><h3>Can I customise the styles?<\/h3><\/dt>\n<dd><p>Yes \u2014 add custom CSS in the WordPress Customizer (Additional CSS) or your theme stylesheet targeting the plugin's classes such as <code>.meetpure-card<\/code>, <code>.meetpure-single-event<\/code>, <code>.meetpure-badge<\/code>, etc. The plugin also inherits your theme's colour palette automatically via CSS custom properties.<\/p>\n\n<p>Yes \u2014 you can paste the shortcodes into any page builder that supports WordPress shortcodes (Elementor, Divi, WPBakery, etc.).<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>0.2.0<\/h4>\n\n<ul>\n<li>Add paginated <code>[meetpure_events]<\/code> rendering using the MeetPure API <code>page<\/code> and <code>per_page<\/code> parameters.<\/li>\n<li>Rename the admin event count setting to <strong>Events Per Page<\/strong> and document <code>count<\/code> as a per-grid page-size override.<\/li>\n<li>Improve the admin settings page with a branded header, full-width settings panels, and refreshed usage guide styling.<\/li>\n<li>Strengthen API token validation for write scopes, multi-team access, and team binding checks.<\/li>\n<li>Rename <strong>Default Team ID<\/strong> to <strong>Team ID<\/strong> and remove the public <code>team_id<\/code> shortcode override.<\/li>\n<\/ul>\n\n<h4>0.1.4<\/h4>\n\n<ul>\n<li>Compatibility: tested up to WordPress 6.9.<\/li>\n<li>Update plugin URI to https:\/\/meetpure.events\/integrations.<\/li>\n<\/ul>\n\n<h4>0.1.2<\/h4>\n\n<ul>\n<li>Fix: events grid spacing now resists theme <code>gap<\/code> overrides via <code>!important<\/code> and an adjacent-sibling margin fallback.<\/li>\n<li>New <code>min_width<\/code> shortcode attribute on <code>[meetpure_events]<\/code> to tune the wrap breakpoint per instance.<\/li>\n<\/ul>\n\n<h4>0.1.1<\/h4>\n\n<ul>\n<li>Fix: events grid is now container-width responsive (auto-fit + minmax) instead of viewport-only.<\/li>\n<li>Cards adapt typography and image height when narrow via container queries.<\/li>\n<\/ul>\n\n<h4>0.1.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<li>Events grid shortcode <code>[meetpure_events]<\/code> with card layout.<\/li>\n<li>Single event detail shortcode <code>[meetpure_event]<\/code>.<\/li>\n<li>Admin settings page with API token, team ID, event count, and single event page picker.<\/li>\n<li>Automatic page title and featured image from event data.<\/li>\n<li>Speakers and agenda sections.<\/li>\n<li>5-minute transient cache.<\/li>\n<li>Theme-inheriting CSS via custom properties.<\/li>\n<\/ul>","raw_excerpt":"Display events from your MeetPure account on any WordPress page or post using simple shortcodes.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/ne.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/308343","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ne.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/ne.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/ne.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=308343"}],"author":[{"embeddable":true,"href":"https:\/\/ne.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/rajuru"}],"wp:attachment":[{"href":"https:\/\/ne.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=308343"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/ne.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=308343"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/ne.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=308343"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/ne.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=308343"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/ne.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=308343"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/ne.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=308343"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}