=== ZooMeet - Meeting & Webinar Integration for Zoom === Contributors: sovlix Tags: zoom, zoom meeting, webinar, video conference, virtual events Requires at least: 5.0 Tested up to: 7.1 Requires PHP: 7.4 Stable tag: 2.2.2 License: GPL-2.0+ License URI: http://www.gnu.org/licenses/gpl-2.0.txt Create Zoom meetings and webinars from WordPress and give each one a page your visitors join from, in the Zoom app or the browser. == Description == **đŸ”Ĩ [Get ZooMeet PRO](https://sovlix.com/zoomeet-pricing/)** | **📖 [Documentation](https://sovlix.com/docs-category/zoomeet-docs/)** | **🤝 [Join Community](https://www.facebook.com/groups/sovlixcommunity)** | **đŸ•šī¸ [YouTube](https://www.youtube.com/@Sovlix/)** **ZooMeet is a Zoom integration for WordPress that creates Zoom meetings and webinars, gives each one its own page on your site, and shows what is live on your Zoom account in wp-admin.** Connect your Zoom account once with a Server-to-Server OAuth app, and every event you create in WordPress is a real Zoom meeting or webinar. Visitors join from your site, in the Zoom app or right in the browser, and you manage the account behind it without switching tabs. Features marked **(Pro)** need [ZooMeet Pro](https://sovlix.com/zoomeet-pricing/). Everything else is in this free plugin. == 🏆 Key Features at a Glance: == == ✅ Zoom Meetings & Webinars From WordPress == - **A guided event wizard** - Create a meeting or webinar in clear steps, with quick picks for the date and length, the time zone, a passcode, the host and alternative hosts. - **Every Zoom setting you rely on** - Waiting room, join before host, Zoom sign-in required, mute on entry, host and participant video, auto recording, and for webinars, panelist video, practice session and HD video. - **All Events in one list** - View, publish drafts, copy a shortcode and delete (to the trash, never straight away). A summary panel flags clashing events and busy days. - **Categories** - Group events by course, client or team, with category pages and a category filter on the list shortcodes. - **Recurring meetings (Pro)** - Daily, weekly or monthly series, created once. - **Registration (Pro)** - Ask for a name and email before the join link appears, approve registrants, and email them. == ✅ Event Pages Your Visitors Join From == Every event gets a page on your site with the details, a countdown and a Join button. - **Join in the Zoom app or in the browser** - Add Meeting SDK keys and visitors can join inside your site. The signature is made on your server, so no secret reaches the browser. - **Host controls on the page** - The host can start the event, end it or let people join early. - **Two free page themes, Classic and Paper** - Choose a brand colour, button shape, sidebar side, thumbnail, and whether the site header and footer show. Pick a theme for the whole site, then change it on any one event. - **Times in each visitor's own time zone** - Optional, per event, with the time zone shown beside the time. - **12 more themes (Pro)** - Cover, Studio, Cadence, Guestlist, Admit, Lobby, Lesson, Keynote, Consult, Aurora, Journal and Encore, plus page background and extra style options. == ✅ Your Zoom Account, Inside WordPress == - **Live Meetings and Live Webinars:** see what is on your Zoom account right now, refresh it, and delete on Zoom. - **Import:** bring existing Zoom meetings into WordPress as events, with a duplicate check. Importing webinars is Pro. - **Zoom Users (Pro):** list, add, edit and remove the users on your Zoom account. Every Zoom user can host events in the free plugin. - **Zoom Recordings (Pro):** browse cloud recordings by host and date range, open the files, and move a recording to the trash. - **Zoom Reports (Pro):** daily, account and per-meeting reports and registrant lists, with CSV export. - **API logs:** see why a Zoom request failed, with errors only or every call, kept 14 days and never storing secrets. == ✅ Shortcodes, Block & Elementor == - `[zmeet-zoom-meeting id="123"]` and `[zmeet-zoom-webinar id="123"]` show one event, with options to hide the details or the timer. - `[zmeet-zoom-meeting-list]` and `[zmeet-zoom-webinar-list]` list upcoming events; add `category="slug"` or `show_past="yes"`. - A block for the block editor and an Elementor widget that embed a meeting or webinar straight from a Zoom host. - **Recording shortcodes (Pro):** a single recording or a recording archive on any page. - **Classic Editor button (Pro).** == ✅ Access & Security == - Choose who may open event pages: everyone, logged-in users, or chosen roles. Hosts and admins always get in. - Passcodes and the waiting room, sent to Zoom with the event. - Zoom keys and passcodes are never sent to the browser. - Works on WordPress Multisite. == ✅ Sell, Teach & Run a Marketplace (Pro) == - **WooCommerce:** sell an event as a product; buyers get the joining details after they pay. - **WooCommerce Bookings:** a Zoom meeting is created for each confirmed booking. - **LMS:** attach live classes to courses and lessons in **Tutor LMS**, **LearnPress**, **LifterLMS** and **Academy LMS**, open only to enrolled students. - **Marketplaces:** **Dokan**, **WCFM Marketplace** and **MultiVendorX** vendors run their own events, each with an on/off switch. - **Frontend Meetings:** members create and manage events from a page on your site, without wp-admin. - **Add to Google Calendar** button on event pages. == 💡 Use Cases == - **Online courses and coaching:** live classes next to the lesson, open to enrolled students. - **Webinars and virtual events:** a public page with a countdown, registration and a Join button. - **Paid consultations:** sell a session through WooCommerce and send the link after payment. - **Teams and agencies:** run every Zoom event from one WordPress login, and with Pro, manage Zoom users, recordings and reports there too. - **Marketplaces:** let each vendor host their own Zoom sessions. **đŸ”Ĩ [Get ZooMeet PRO](https://sovlix.com/zoomeet-pricing/)** | **📖 [Documentation](https://sovlix.com/docs-category/zoomeet-docs/)** | **🤝 [Join Community](https://www.facebook.com/groups/sovlixcommunity)** | **đŸ•šī¸ [YouTube](https://www.youtube.com/@Sovlix/)** == 📖 Documentation == Step-by-step guides with screenshots for every feature: - [Connect Zoom with ZooMeet (Server-to-Server OAuth)](https://sovlix.com/docs/connect-zoom-with-zoomeet/) - [Set up Join in browser (Meeting SDK)](https://sovlix.com/docs/zoomeet-join-zoom-in-browser/) - [Create your first Zoom meeting](https://sovlix.com/docs/zoomeet-create-zoom-meeting/) - [Show Zoom meetings on any page with shortcodes](https://sovlix.com/docs/zoomeet-shortcodes/) - [All ZooMeet guides](https://sovlix.com/docs-category/zoomeet-docs/) == đŸ“ĸ Hear From Our Users == > ⭐⭐⭐⭐⭐ [`Excellent Support and Multi-Vendor Features`](https://wordpress.org/support/topic/excellent-support-and-multi-vendor-features-2/) *I needed each vendor to be able to connect their own Zoom account, and the support team helped me get everything working quickly. Now every vendor can manage meetings using their own Zoom account. - by @akbarali98* > ⭐⭐⭐⭐⭐ [`Best Zoom plugin for WordPress`](https://wordpress.org/support/topic/best-zoom-plugin-for-wordpress/) *This zoom meeting plugin is fantastic. Loved this one and its team's dedication and support. - by @tasnim179* == 😍 Other Plugins from Our Team == - **[MeetingHub](https://wordpress.org/plugins/meetinghub/) -** Appointment booking and meeting scheduling for Zoom, Google Meet, Microsoft Teams, Webex and Jitsi - **[GoodMeet](https://wordpress.org/plugins/goodmeet/) -** Meetings, webinars and classes for Google Meet - **[DriveHub](https://wordpress.org/plugins/drivehub/) -** Google Drive integration for WordPress - **[WeMeet](https://wordpress.org/plugins/wemeet/) -** Webex integration for webinars, meetings and video conferences - **[TogMeet](https://wordpress.org/plugins/togmeet/) -** Microsoft Teams integration for webinars, meetings and video conferences == Installation == 1. In your WordPress admin, go to **Plugins → Add New Plugin** and search for **ZooMeet**. 2. Click **Install Now**, then **Activate**. 3. Go to **Settings → Connect** in the plugin's menu and add your Zoom Server-to-Server OAuth keys. The [Connect Zoom guide](https://sovlix.com/docs/connect-zoom-with-zoomeet/) shows where to find them. 4. Optional: add Meeting SDK keys on the same screen so people can join inside your site ([guide](https://sovlix.com/docs/zoomeet-join-zoom-in-browser/)). 5. Click **Add New Event** and create your first meeting or webinar. == Frequently Asked Questions == = What does ZooMeet do? = It connects WordPress to your Zoom account. You create Zoom meetings and webinars in wp-admin, each one gets a page on your site that visitors join from. With Pro, your Zoom users, recordings and reports are managed from the same menu. = Do I need a paid Zoom account? = ZooMeet works with the Zoom account you already have and charges nothing for meetings. Webinars, cloud recordings and some reports need the matching paid Zoom plan, because Zoom provides those features, not WordPress. = How do I connect Zoom? = Create a Server-to-Server OAuth app in the Zoom App Marketplace, copy its Account ID, Client ID and Client Secret into **Settings → Connect**, and save. ZooMeet checks the connection on save and shows Zoom's own message if something is wrong. = Can people join inside my website? = Yes. Add Meeting SDK keys under **Settings → Connect** and the event page offers Join in browser as well as Join in the Zoom app. The join signature is created on your server, so the SDK secret never reaches the browser. = Can I bring in meetings I already made in Zoom? = Yes. The Import screen lists the meetings on your Zoom account and adds the ones you pick as WordPress events, skipping any that are already there. Importing webinars needs ZooMeet Pro. = Are Zoom users, recordings and reports free? = No, they are ZooMeet Pro screens: managing Zoom users, browsing and trashing cloud recordings, every report, and the recording shortcodes. The free plugin still lets any user on your Zoom account host an event. = Can I limit who sees an event? = Yes. Under **Settings → Access & hosts**, event pages can be open to everyone, logged-in users or chosen roles. With Pro, registration and LMS enrolment add their own checks. = Can I sell meetings or use them in my courses? = Yes, with ZooMeet Pro. It sells events through WooCommerce and WooCommerce Bookings, and attaches live classes to Tutor LMS, LearnPress, LifterLMS and Academy LMS courses. = Does it work with Elementor and the block editor? = Yes. There is a block for the block editor, an Elementor widget, and shortcodes that work anywhere. The Classic Editor button is Pro. = Is ZooMeet made by Zoom? = No. ZooMeet is an independent plugin by Sovlix and is not affiliated with or endorsed by Zoom Video Communications, Inc. Zoom is a trademark of Zoom Video Communications, Inc. == External services == This plugin connects to Zoom to create and manage meetings and webinars, and to Freemius for licensing. Each is listed with what is sent and when. **Zoom OAuth** (`zoom.us/oauth/token`) - exchanges the Account ID, Client ID and Client Secret you enter under Settings → Connect for an access token, when you save the settings and whenever the token needs renewing. **Zoom REST API** (`api.zoom.us`) - used to create, update, delete and import meetings and webinars, to list the Zoom users who can host them, and, with Pro, to manage Zoom users and read recordings and reports. - Creating or updating an event sends its title, description, start time, time zone, duration, passcode, host, alternative hosts and the meeting settings you chose. - With Pro, the Zoom Users screen sends a user's name, email and type when you add or edit one. - Admin screens such as All Events, Live Meetings, Live Webinars and, with Pro, Zoom Users, Recordings and Reports read from Zoom when you open them, and event pages read the meeting's status. **Zoom Meeting SDK** (`source.zoom.us`) - loaded in the visitor's browser only on the Join in browser page. The browser connects to Zoom with the meeting number, a signature made on your server, and the display name and email the visitor enters. This service is provided by Zoom Video Communications, Inc.: [Terms of Service](https://zoom.us/terms), [Privacy Policy](https://zoom.us/privacy). **Freemius** - used to license ZooMeet Pro and, if you opt in on the activation screen, to receive basic site data (site URL, WordPress, PHP and plugin versions, and your admin email) that helps us support the plugin. You can skip the opt-in; the free plugin works the same either way. This service is provided by Freemius, Inc.: [Terms of Service](https://freemius.com/terms/), [Privacy Policy](https://freemius.com/privacy/). == Source Code == The admin interface is built with React and compiled to the minified JavaScript and CSS in `assets/dist/`. The uncompiled source ships with the plugin in `assets/src/`, and `package.json` and the webpack, Tailwind and PostCSS configuration are in the plugin root. To rebuild it, run `npm install`, then `npm run build` and `npm run build:getstarted` with `NODE_ENV=production`. The PHP libraries in `vendor/` are listed in `composer.json`. == Screenshots == 1. All Events: every meeting and webinar in one list, with tabs for upcoming, past and events that need attention 2. Editing an event in four short steps: name and type, date and time, access, page design 3. The event page visitors see: title, countdown, date and time, and Join buttons 4. Connecting ZooMeet to your Zoom account with a Server-to-Server OAuth app 5. Event themes: Classic and Paper are free, with more themes in Pro 6. Categories to group events and filter lists 7. Integrations with WooCommerce, marketplaces, LMS plugins, calendars and page builders 8. Get Started: a short guide from connecting Zoom to your first event == Changelog == = 2.2.2 - 30 Oct, 2026 = * **New:** With ZooMeet Pro 2.2.1, attendees who signed in with the event email and password get a Sign out link under the join buttons. ZooMeet adds the place for it and the styles for every design. = 2.2.1 - 29 Oct, 2026 = * **Fix:** Join in browser and Join in Zoom app show again on webinars and meetings that use Zoom registration. In 2.2.0 visitors who were not logged in, and buyers from before the update, saw only Register on Zoom, even after they had registered. Zoom still asks anyone who has not registered yet to register when they click Join. = 2.2.0 - 27 Oct, 2026 = * **Fix:** The Settings link on the Plugins screen shows again. * **Security:** Contributors no longer create events by default. An event is a live Zoom meeting on the site owner's Zoom account and a public page, which WordPress does not let Contributors publish. Creating events now needs the publish_posts capability (Authors, Editors and administrators). To let another role create events, give it the `zmeet_create_meetings` capability, return true from the `zmeet_can_create_meetings` filter, or pick the role under Frontend Meetings in ZooMeet Pro. * **Change:** Editors can now manage every event, as they can every post: they pick any event in the Zoom block, and with ZooMeet Pro they list, edit, end and delete any event from the Frontend Meetings dashboard. Authors manage their own events. The ZooMeet admin screens stay with administrators. * **Fix:** Editing someone else's event no longer makes you its owner, and the event keeps its Zoom host unless an administrator or Editor picks another one. * **Fix:** Webinars and meetings that take Zoom registrants only showed Join and Join in browser, which Zoom refused without a registration. They now show Register on Zoom, linking to Zoom's registration page, on the event page in every design, in both shortcodes, on the join-in-browser page and in the Zoom block. Events created before this update are covered. A visitor with their own Zoom registrant link joins with it, in the Zoom app or the browser. * **Change:** With a ZooMeet Pro older than 2.2.0, the Pro screens stay locked and ZooMeet's own screens ask for a Pro update. * **New:** The new ZooMeet logo, a blue chat-and-camera tile, on the admin menu, the block, the Get Started page and the WordPress.org listing. * **Enhancement:** The admin uses ZooMeet's own blue throughout, with every text colour checked for contrast. * **Enhancement:** Theme previews show the sample host as initials, and person icons in the admin are now simple object icons. * **Enhancement:** The admin and front-end scripts are much smaller, so screens load faster. * **Enhancement:** A clearer plugin description, FAQ and external services disclosure. * **Change:** Zoom Users, Zoom Recordings and Zoom Reports are now ZooMeet Pro screens, as the plan table on the Get Started page always listed them. Without Pro they show a preview. Every Zoom user can still host events in the free plugin. * **Change:** The server code behind Pro features (screens, routes and settings) now ships in ZooMeet Pro. * **Fix:** Editing an event now sends every setting to Zoom, including the ones ZooMeet Pro adds, such as a repeating schedule. * **Fix:** Saving the Appearance settings no longer resets a ZooMeet Pro design to Classic while Pro is switched off. * **Fix:** An event only shows as recurring when it has a repeating schedule. * **Fix:** The Classic event page did not show the event title. It now leads the page, on block and classic themes. * **Fix:** On the Classic event page, the Join buttons now line up with the left edge, with space between them and the same height. * **Fix:** The join-in-browser page no longer loads a debug console for every visitor. * **Fix:** The Classic Editor card on the Integrations screen is now marked as a Pro feature, since the toolbar button comes with ZooMeet Pro. * **Fix:** Creating an event from Add New Event failed with "No hosts found" when the Zoom users were not saved yet; the host field now picks the first Zoom user once the list loads, and the time zone defaults to the site's. * **Fix:** With several event shortcodes on one page, every event showed the first one's time, countdown and calendar link. * **Fix:** Cancelling the End or Start prompt on an event page no longer ends or starts the event anyway. * **Fix:** The Paper design now shows times in the visitor's own time zone and no longer logs a console error. * **Fix:** A repeating meeting's Classic page and shortcode show the next session instead of the first start, and the countdown no longer reloads the page every second once that start has passed. * **Fix:** The webinar shortcode now shows the Add to Google Calendar button and honours `hide_calendar`, like the meeting shortcode. * **Fix:** The upgrade notice no longer offers co-hosts, which every free event already has, and shows only when ZooMeet Pro is not installed. = 2.1.2 - 15 Oct, 2026 = * Maintenance updates and bug fixes. = 2.1.1 - 7 Oct, 2026 = * **Enhancement:** Clearer setup guide links on the Connect settings, with a link to the full guide for each Zoom app. = 2.1.0 - 7 Oct, 2026 = * **New:** Live Meetings and Live Webinars show what is on your Zoom account, right inside WordPress. * **New:** Import your existing Zoom meetings in a few clicks. * **New:** Categories for your events, with category pages and a category option for the list shortcodes. * **New:** API logs to see why a Zoom request failed. * **New:** Choose who can open event pages, and set default alternative hosts. * **New:** Publish draft events from the All Events list. * **Enhancement:** The menu now says All Events, with a new Add New Event item. * **Enhancement:** Settings and the event form use the same labels Zoom uses. * **Enhancement:** The event description uses the familiar WordPress editor. * **Enhancement:** Clearer Zoom setup steps in Settings. * **Fix:** All Events could fail to load because of one broken event. * **Fix:** The waiting room setting was not sent to Zoom. * **Fix:** Saving a draft no longer publishes it. * **Fix:** Several smaller issues with older events, list shortcodes and button colors. * **Security:** Zoom keys and passcodes are no longer exposed in the browser. * **Note:** List shortcodes now hide ended events. Add show_past="yes" to show them. * **Compatibility:** Tested up to WordPress 7.1. = 2.0.0 - 29 Sep, 2026 = * **New:** Fully redesigned admin: All Meetings, Settings, Integrations, Zoom Users, Reports and Recordings share one modern design. * **New:** Step-by-step meeting and webinar wizard with quick date and duration picks. * **New:** Get Started page with guided setup. * **New:** Separate Frontend Meetings screen to publish a meeting page and add it to a menu. * **New:** Integrations directory with search, categories and one-click plugin activation. * **New:** Separate on/off switch for each marketplace (Dokan, WCFM, MultiVendorX). * **Enhancement:** Zoom connection is verified on save, and Zoom's own error is shown when it fails. * **Enhancement:** Clear error screens with a Try again button when meetings or settings fail to load; settings can no longer be saved over with blank values. * **Enhancement:** Deleted meetings go to the trash instead of being removed. * **Enhancement:** The redesigned screens keep their look inside vendor and LMS dashboards, whatever the theme. * **Enhancement:** Accessibility: keyboard focus, labelled controls, dialog focus handling and contrast. * **Compatibility:** Tested up to WordPress 7.1. = 1.3.6 - 19 Aug, 2026 = * **Security:** Security and stability fixes. = 1.3.5 - 12 Aug, 2026 = * **Enhancement:** Enhanced performance and security. * **Fix:** "Join in Browser" no longer shows a blank page. The Zoom Meeting SDK signature is now generated server side so the SDK secret never reaches the browser. Zoom had removed the old client-side signature helper, which silently broke the join. * **Fix:** Other installed Zoom plugins shipping unscoped `#zmmtg-root` CSS could hide this plugin's own meeting window even though the join succeeded; the browser-join view now dequeues unrelated theme/plugin assets and forces its own meeting root visible. * **Fix:** Restored the meeting join screen when WordPress core's Underscore.js overwrote the Zoom SDK's required lodash build, which broke the SDK's internal `_.isNil` calls. * **Fix:** Resolved PHP warnings and a broken registration/sign-in form on password-protected meetings. * **Enhancement:** Updated Zoom Meeting SDK from 3.1.6 to 3.10.0. = 1.3.4 - 07 Jul, 2026 = * **New:** Meeting start times now display the timezone abbreviation (e.g. EDT, EST, CDT, CST, PDT, PST) so the timezone is clear at a glance. Abbreviations are DST-aware and computed for the meeting's date. * **New:** Added separate Configure option for vendors in the MultiVendorX dashboard, so each vendor gets their own Zoom settings page under Zoom Meetings. * **Enhancement:** When "Show Event Time in User's Timezone" is enabled, the visitor's local time and timezone now appear as separate "Your time" and "Your timezone" rows in the meeting details for better readability. * **Fix:** Action icons (edit, view, delete) now display correctly in vendor dashboard meeting lists; the icon font stylesheet was missing in Dokan, WCFM, and MultiVendorX dashboards. = 1.3.3 - 02 Jul, 2026 = * **Fix:** Reduced tags to 5 to comply with WordPress.org limit. * **Fix:** Trimmed short description to under 150 characters. = 1.3.2 - 02 Jul, 2026 = * **Enhancement:** Replaced YouTube video tutorial links with documentation link on Connect tab for both Server-to-Server OAuth and Meeting SDK App Credentials sections. = 1.3.1 - 16 Jun, 2026 = * **Compatibility:** Tested up to WordPress 7.0 = 1.3.0 - 15 March 2026 = * **New:** Unified Zoom Participant Reports for both Daily and Account report sections. * **New:** Added a "View Participants" modal with detailed attendee lists and analytics. * **New:** Search functionality within participant lists to quickly find attendees by name or email. * **New:** Client-side CSV Export feature for all participant report data. * **New:** "Meeting per Participant" feature allowing detailed view of participant metrics for specific meetings. * **Enhancement:** Improved report interface with interactive participant counts for easier access to meeting details. = 1.2.1 - 02 March 2026 = * **New:** Added an admin notice system for ZooMeet configuration monitoring (OAuth and SDK). * **New:** Added persistent notice dismissal with 7-day, 14-day, 1-month, or "forever" snooze options. * **Enhancement:** Integrated React-based administrative notices into the Settings UI. * **New:** Added missing Client ID and Client Secret labels for Meeting SDK App Credentials. * **Fix:** Removed unplanned debug logs and improved UI consistency across Zoom forms. * **Fix:** Resolved JavaScript error in Zoom user retrieval by adding data validation. * **Enhancement:** Standardized settings links by removing unnecessary anchor fragments for better navigation. = 1.2.0 - 02 March 2026 = * **New:** Now exclusively focused on Zoom for a dedicated experience. * **Fix:** Fixed critical Zoom host retrieval issue where "No hosts found" error appeared despite valid connection. * **Enhancement:** Improved Zoom Direct Meeting and Webinar block with better UI parity and missing labels. * **Enhancement:** Updated meeting list visibility logic to default to "Show All" for improved admin experience. * **Enhancement:** Rebuilt frontend and Gutenberg block assets for better performance. * **New:** Added full integration support for LifterLMS. * **New:** Redesigned Settings UI with a modern dashboard and "Connected" status badge. * **New:** Added OAuth redirect URL copy utility for streamlined configuration. * **Enhancement:** Enhanced token management and automated session regeneration. * **Fix:** Resolved recurring meeting display bugs and optimized WooCommerce integration. = 1.1.2 - 24 November 2025 = * Minor bug fixes and improvements. = 1.1.1 - 25 September 2025 = * Updated Freemius SDK = 1.1.0 - 03 Jul, 2025 = * **New:** Introduced several new features = 1.0.0 = * Initial release