xpay✦ Commerce
Directory
WooCommerce plugins
CloseHub Connector
CloseHub Connector
Connect your WordPress site to CloseHub with a single API key in order to send statistics.
Will this break my store?
What the WordPress.org registry says about keeping CloseHub Connector running.
Tested to 7.1
Tested against the WordPress branch in use today.today
8.1
Your host must be running at least this version.6.4
2
Maintenance & trust
Scored on how CloseHub Connector is looked after — not on how many stores run it.
Maintenance
35 / 35WordPress compatibility
20 / 20Support responsiveness
Not enough dataMerchant satisfaction
Not enough dataListing transparency
6 / 10Ratings
No one has rated this plugin on WordPress.org yet. That is a statement about the ratings page, not about the plugin — plenty of well-kept plugins never collect them.
CloseHub Connector replaces the multiple credentials previously required to link a WordPress site with CloseHub — a marketing project management platform.
Once the plugin is activated, it generates a secure API key and exposes a dedicated REST API namespace (/wp-json/closehub/v1/) that CloseHub uses to interact with your site.
It also exposes content abilities through the WordPress MCP Adapter. MCP clients can discover, list, read, create, update, and send posts to the trash using the server at /wp-json/mcp/mcp-adapter-default-server. These abilities default to the post type but accept a post_type input for any other post type registered with an admin UI — pages, WooCommerce products (including product types WooCommerce’s own MCP abilities don’t support, such as subscriptions), or custom post types. Authenticate with a WordPress user account that has the required post capabilities; the CloseHub API key is not used for MCP authentication.
For WooCommerce, MCP clients with the manage_woocommerce capability can retrieve an order summary for a date range, including order count, total sales, average order value, and matching orders.
It also exposes a set of “site” abilities for the CLOSE web go-live checklist — configuration steps that used to be manual or wp-cli only. Each requires the WordPress capability noted below.
Available MCP site abilities:
closehub/search-replace-domain(manage_options) — Replaceold_domainwithnew_domainacross post content, options, comments, and meta tables, re-serializing serialized values safely. Skipswp_posts.guid. Passdry_run: trueto preview the number of rows that would change per table without writing anything. Example:{ "old_domain": "staging.example.com", "new_domain": "example.com" }.closehub/set-robots-txt(manage_options) — Writecontenttorobots.txt, physically if the site root is writable, otherwise served virtually through therobots_txtfilter. Example:{ "content": "User-agent: *\nDisallow:\nSitemap: https://example.com/sitemap.xml" }.closehub/set-post-noindex(edit_poston the targetpost_id) — Set or clear the noindex robots meta for one post/page using whichever SEO plugin (Rank Math or Yoast) is active. Example:{ "post_id": 42, "noindex": true }.closehub/flush-permalinks(manage_options) — Regenerate rewrite rules, equivalent towp rewrite flush. Takes no parameters.closehub/get-htaccess(manage_options, read-only) — Return whether.htaccessexists and its current content. Takes no parameters.closehub/set-site-settings(manage_options) — Update the site timezone and/or admin email; at least one is required. Example:{ "timezone": "Europe/Madrid", "admin_email": "client@example.com" }.closehub/reassign-posts-author(edit_others_posts) — Reassign every post ofpost_type(defaultpost) fromfrom_author_idtoto_author_id, with a per-post success result. Example:{ "from_author_id": 3, "to_author_id": 1 }.closehub/install-wp-org-plugin(install_plugins) — Install (without activating) a plugin from the WordPress.org plugin directory byslug. Example:{ "slug": "two-factor" }.closehub/list-unused-plugins(activate_plugins, read-only) — List installed plugins that are not currently active, as removal candidates. Takes no parameters.closehub/update-plugins-and-core(update_pluginsandupdate_core) — Update every plugin with an available update and WordPress core to the latest version, with a per-plugin success result. Takes no parameters.closehub/create-site-user(create_users, pluspromote_userswhenroleisadministrator) — Create a WordPress user for the site’s client.roledefaults toeditor;usernamedefaults to the local part ofemailwhen omitted. Example:{ "email": "client@example.com", "role": "editor" }.
What it replaces:
- WordPress Application Password (username + password)
- WooCommerce REST API consumer key and consumer secret
- Gravity Forms API key
You only need to share two things with CloseHub:
- Your site URL
- The generated API key (found at Settings → CloseHub)
Available endpoints:
GET /closehub/v1/ping— verify the connectionPOST /closehub/v1/posts— publish or draft a post (or another post type viapost_type), including optional SEO metadata (Rank Math or Yoast), featured image, and categoriesPUT /closehub/v1/posts/{id}— update a post’s (or other post type’s) title, content, excerpt, status, SEO metadata, featured image, or categoriesGET /closehub/v1/woocommerce/orders— fetch order data (requires WooCommerce)GET /closehub/v1/gravity-forms/forms— list forms (requires Gravity Forms)GET /closehub/v1/gravity-forms/forms/{id}— get form detailsGET /closehub/v1/gravity-forms/forms/{id}/entries— count form entries by date range
WooCommerce and Gravity Forms endpoints return a clear error if those plugins are not active — they are not required.
Multisite networks:
On a WordPress Multisite network, the same endpoints listed above are shared by every site in the network — there is no separate namespace or key to manage. Activate the plugin network-wide and go to Network Admin → Settings → CloseHub to find one API key shared by the whole network. Every request to those endpoints automatically returns a sites array with one entry per site in the network (site_id, url, and that site’s data or an error message), instead of a single site’s result — handy when a network is used to run the same company in multiple languages.
Go to Settings → CloseHub in your WordPress admin. The key is displayed there along with a copy button.
Yes. Click Regenerate Key on the Settings → CloseHub page. The old key stops working immediately — update CloseHub with the new key right away.
No. Both are optional. If they are not active, those endpoints return a 503 response with a clear message instead of crashing.
The key is stored in wp_options (or network-wide in wp_sitemeta on multisite), never exposed on the frontend, transmitted only via HTTPS, and verified using constant-time comparison (hash_equals) to prevent timing attacks. It is never logged or included in REST responses.
Yes. When network-activated, the plugin generates one API key shared by every site in the network (managed from Network Admin → Settings → CloseHub instead of a per-site Settings page), and the same REST endpoints automatically query every site and return combined, per-site results. On a regular, non-multisite install, everything works exactly as a single site as described above.
No. It integrates with those plugins using their public PHP APIs but is not developed, endorsed, or supported by WooCommerce or Gravity Forms.
Plugin details
Tags on WordPress.org
