{"id":287977,"date":"2026-03-29T13:02:30","date_gmt":"2026-03-29T13:02:30","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/sms-cart-recovery-by-octopush\/"},"modified":"2026-05-20T09:20:25","modified_gmt":"2026-05-20T09:20:25","slug":"octopush-sms-automation-cart-recovery","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/octopush-sms-automation-cart-recovery\/","author":14803690,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.1.13","stable_tag":"1.1.13","tested":"7.0","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"Octopush SMS Automation & Cart Recovery","header_author":"Muhammad Hamza","header_description":"Official plugin of Octopush (https:\/\/octopush.com\/) for WooCommerce. SMS automation, campaigns, contacts sync, abandoned cart recovery, and live chat. Developed and owned by Octopush.","assets_banners_color":"e8dfd2","last_updated":"2026-05-20 09:20:25","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/wordpress.org\/plugins\/octopush-sms-automation-cart-recovery\/","header_author_uri":"https:\/\/profiles.wordpress.org\/hamzachaudhry\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":285,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.1.10":{"tag":"1.1.10","author":"octopush","date":"2026-04-03 13:27:17"},"1.1.11":{"tag":"1.1.11","author":"octopush","date":"2026-04-03 13:32:10"},"1.1.12":{"tag":"1.1.12","author":"octopush","date":"2026-05-20 09:16:01"},"1.1.13":{"tag":"1.1.13","author":"octopush","date":"2026-05-20 09:20:25"},"1.1.5":{"tag":"1.1.5","author":"octopush","date":"2026-04-03 11:30:56"},"1.1.6":{"tag":"1.1.6","author":"octopush","date":"2026-04-03 11:46:30"},"1.1.7":{"tag":"1.1.7","author":"octopush","date":"2026-04-03 12:40:17"},"1.1.8":{"tag":"1.1.8","author":"octopush","date":"2026-04-03 12:44:13"},"1.1.9":{"tag":"1.1.9","author":"octopush","date":"2026-04-03 13:23:34"}},"upgrade_notice":{"1.1.13":"<p>Readme: declare support for WordPress 7.0.<\/p>","1.1.12":"<p>Fixes a PHP 8+ checkout fatal caused by hook argument mismatch and adds Store API checkout compatibility handling.<\/p>","1.1.11":"<p>Author metadata update in plugin header.<\/p>","1.1.10":"<p>Version\/readme alignment with the tagged release on WordPress.org.<\/p>","1.1.7":"<p>Developer credit and WordPress.org contributor listing update.<\/p>","1.1.6":"<p>Listing text refresh: improved plugin short description for better storefront visibility.<\/p>","1.1.5":"<p>Readme: corrected Octopush terms of service URL in External services.<\/p>","1.1.4":"<p>WordPress.org review: main filename aligned with slug; readme documents Octopush central cron external service.<\/p>","1.1.3":"<p>Rebrand release: new plugin name, slug, and text domain.<\/p>","1.1.2":"<p>Abandoned cart SMS for France: mandatory STOP clause appended for +33 numbers.<\/p>","1.1.1":"<p>Maintenance release.<\/p>","1.1.0":"<p>Packaging cleanup: no <code>.DS_Store<\/code> or other dotfiles in the plugin ZIP; see <code>PACKAGING.txt<\/code> before uploading to WordPress.org or Plugin Check.<\/p>","1.0.10":"<p>Internal cleanup for release packaging (remove hidden files such as .DS_Store).<\/p>","1.0.9":"<p>Larger country dropdown arrow in abandoned cart and Store Owner Phone field.<\/p>","1.0.8":"<p>Store Owner Phone dropdown in Settings now shows country flags in the list.<\/p>","1.0.7":"<p>Store Owner Phone in Settings now has the same searchable country dropdown. Abandoned cart phone field improvements.<\/p>","1.0.6":"<p>Settings: version moved above Connection Status &amp; Balance. Phone field UI improvements.<\/p>","1.0.5":"<p>Country dropdown in abandoned cart popup and inline field now shows country names and is searchable by name or code.<\/p>","1.0.4":"<p>Plugin version is now shown on the Settings page for easier support and updates.<\/p>","1.0.3":"<p>Automatically enable central cron on activation when available, and improve cleanup of non-abandoned carts after checkout.<\/p>","1.0.2":"<p>Internal improvements and cron reliability fixes.<\/p>","1.0.1":"<p>Initial release. Requires WordPress 5.8+, PHP 7.4+, and WooCommerce for full functionality.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3498260,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3498257,"resolution":"256x256","location":"assets","locale":"","width":2500,"height":2500}},"assets_banners":{"banner-772x250.png":{"filename":"banner-772x250.png","revision":3498215,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.1.10","1.1.11","1.1.12","1.1.13","1.1.5","1.1.6","1.1.7","1.1.8","1.1.9"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[15962,456,216033,711,286],"plugin_category":[41,45,55],"plugin_contributors":[259380,207158],"plugin_business_model":[],"class_list":["post-287977","plugin","type-plugin","status-publish","hentry","plugin_tags-abandoned-cart","plugin_tags-marketing","plugin_tags-octopush","plugin_tags-sms","plugin_tags-woocommerce","plugin_category-communication","plugin_category-ecommerce","plugin_category-seo-and-marketing","plugin_contributors-hamzachaudhry","plugin_contributors-octopush","plugin_committers-hamzachaudhry","plugin_committers-octopush"],"banners":{"banner":"https:\/\/ps.w.org\/octopush-sms-automation-cart-recovery\/assets\/banner-772x250.png?rev=3498215","banner_2x":false,"banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/octopush-sms-automation-cart-recovery\/assets\/icon-128x128.png?rev=3498260","icon_2x":"https:\/\/ps.w.org\/octopush-sms-automation-cart-recovery\/assets\/icon-256x256.png?rev=3498257","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p><strong>This is the official WordPress plugin of Octopush (https:\/\/octopush.com\/).<\/strong> It is developed and owned by Octopush and connects your WooCommerce store to the Octopush SMS service. It provides SMS automation, contact management, campaigns, abandoned cart recovery with popup and inline capture, and an optional live chat widget.<\/p>\n\n<p><strong>Requirements<\/strong><\/p>\n\n<ul>\n<li>WordPress 5.8 or higher<\/li>\n<li>PHP 7.4 or higher<\/li>\n<li>WooCommerce (for SMS automation, abandoned carts, and contact features)<\/li>\n<li>An Octopush account and API credentials (api key, sender, etc.)<\/li>\n<\/ul>\n\n<p><strong>Features<\/strong><\/p>\n\n<ul>\n<li><strong>SMS automation<\/strong> \u2013 Send SMS to customers (new order, order status) and to the shop owner<\/li>\n<li><strong>Abandoned cart<\/strong> \u2013 Detect abandoned carts, capture guest contact (popup and\/or inline on cart page), send timed reminders (15m, 2h, 24h, 72h) with recovery links<\/li>\n<li><strong>Contacts<\/strong> \u2013 WooCommerce contacts list, sync with Octopush<\/li>\n<li><strong>Campaigns<\/strong> \u2013 Send one-off SMS campaigns to WooCommerce contacts<\/li>\n<li><strong>Reports &amp; logs<\/strong> \u2013 View sent SMS and errors by context<\/li>\n<li><strong>Live chat<\/strong> \u2013 Optional Octopush chat widget on the front end<\/li>\n<li><strong>Customization<\/strong> \u2013 Customize abandoned cart popup and inline field (colors, text, timing)<\/li>\n<\/ul>\n\n<p><strong>Privacy &amp; data<\/strong><\/p>\n\n<p>The plugin sends data to Octopush (phone numbers, names, messages) when you send SMS or sync contacts. Abandoned cart capture is optional and configurable. Document your use of Octopush and this plugin in your privacy policy. Do not track users without consent; configuring and using the plugin implies consent for the Octopush service.<\/p>\n\n<h3>External services<\/h3>\n\n<p>WordPress requires that plugins which connect to external services disclose this clearly. This plugin connects to services operated by Octopush (https:\/\/octopush.com\/). Use of these services is required to send SMS, manage contacts, and display the optional live chat widget.<\/p>\n\n<p><strong>What the services are and what they are used for:<\/strong>\n* <strong>Octopush API (https:\/\/api.octopush.com)<\/strong> \u2013 Used to send SMS messages, create and manage contact lists, sync contacts, and check account balance.\n* <strong>Octopush Live Chat (https:\/\/livechat.octopush.com)<\/strong> \u2013 Used to load the chat widget on your site when enabled.\n* <strong>Octopush central cron (https:\/\/octopush.com\/wordpress-cron\/)<\/strong> \u2013 Optional Octopush-operated service used when you turn on \u201cautomatic cron\u201d for abandoned cart checks (or when the plugin attempts best-effort registration on activation, if this feature is available in your build). It registers your store\u2019s <strong>external cron URL<\/strong> with Octopush so their infrastructure can call that URL on a schedule (for example every 5 minutes), triggering abandoned-cart processing on your site without you configuring a separate cron provider.<\/p>\n\n<p><strong>What data is sent and when:<\/strong>\n* <strong>Octopush API:<\/strong> When you send SMS, run campaigns, sync contacts, or check connection\/balance from Settings, the plugin sends to Octopush: your API credentials (email and API key), recipient phone numbers, message content, and contact data (name, phone, optional email). Data is sent only when you perform those actions.\n* <strong>Octopush Live Chat:<\/strong> When the widget is enabled, the plugin loads the chat SDK and sends your configured website token. Chat conversations are handled by Octopush; the plugin does not send additional personal data beyond what the chat widget collects.\n* <strong>Octopush central cron:<\/strong> When registration runs (on activation as a best-effort attempt if central cron is configured in the plugin, or when a shop manager enables automatic cron in the admin), the plugin sends an HTTPS POST with JSON to Octopush endpoints under https:\/\/octopush.com\/wordpress-cron\/ (for example register.php). The body includes: your site\u2019s <strong>full external cron URL<\/strong> (which contains your site\u2019s secret cron key in the query string), your site\u2019s public <strong>home URL<\/strong> (HTTPS), and a <strong>shared server secret<\/strong> (distributed with the plugin build) used only to authenticate the request to Octopush\u2014not your Octopush account password or API key. When you disable automatic cron, the plugin POSTs JSON to the unregister endpoint with the same cron URL, the <strong>job identifier<\/strong> returned at registration, and the same shared server secret. No customer personal data is sent to this service; it only coordinates HTTP requests to your own WordPress cron URL. If central cron is not configured for your build, these requests are not made and you can still use the manual external cron URL or \u201cRun abandoned cart check now\u201d as documented in the FAQ.<\/p>\n\n<p>Octopush\u2019s terms of service and privacy policy apply to data processed by these services. <strong>Terms of service and privacy policy:<\/strong> Use of these services is subject to Octopush terms and privacy policy. Direct links: Terms of service (CGU) https:\/\/octopush.com\/conditions-generales-d-utilisation\/ ; Privacy policy https:\/\/www.octopush.com\/politique-de-confidentialite\/ . If these URLs change, find the current links in the footer of https:\/\/www.octopush.com\/ .<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Install and activate WooCommerce if you plan to use SMS automation or abandoned carts.<\/li>\n<li>Upload the plugin files to <code>\/wp-content\/plugins\/octopush-sms-automation-cart-recovery\/<\/code> or install through the WordPress Plugins screen.<\/li>\n<li>Activate the plugin through the Plugins screen.<\/li>\n<li>Go to Octopush SMS Automation &amp; Cart Recovery in the admin menu and open Settings. Enter your Octopush API key, sender, and other credentials. Save and test the connection.<\/li>\n<li>Configure SMS templates (Abandoned Carts, SMS Toward Customers, SMS Toward Shop Owner) and optional popup\/inline customization under Octopush SMS Automation &amp; Cart Recovery -&gt; SMS Automation.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20need%20an%20octopush%20account%3F\"><h3>Do I need an Octopush account?<\/h3><\/dt>\n<dd><p>Yes. You need an Octopush account and API credentials to send SMS. The plugin acts as an interface to the Octopush service.<\/p><\/dd>\n<dt id=\"is%20abandoned%20cart%20capture%20optional%3F\"><h3>Is abandoned cart capture optional?<\/h3><\/dt>\n<dd><p>Yes. You can enable or disable the time-based popup and the inline name\/phone field on the cart page independently. Both are configurable under SMS Automation \u2192 Abandoned Carts \u2192 Popup &amp; Inline Capture Customization.<\/p><\/dd>\n<dt id=\"how%20do%20abandoned%20cart%20alerts%20run%3F%20do%20i%20need%20to%20set%20up%20cron%3F\"><h3>How do abandoned cart alerts run? Do I need to set up cron?<\/h3><\/dt>\n<dd><p>Abandoned cart detection and SMS alerts run only when the <strong>external cron URL<\/strong> is called. There is no WordPress cron or traffic-based trigger. You must call the secret URL (shown in SMS Automation \u2192 Abandoned Carts under \"External cron (required for automatic alerts)\") every 5 minutes from your server\u2019s crontab, your host\u2019s cron tool, or a free service like cron-job.org. The URL is unique to your site and must be kept secret. Until this is set up, use the \"Run abandoned cart check now\" button for manual runs.<\/p><\/dd>\n<dt id=\"where%20are%20contacts%20stored%3F\"><h3>Where are contacts stored?<\/h3><\/dt>\n<dd><p>Contacts are stored in your WordPress database (custom table for Woo contacts). The plugin can sync WooCommerce-related contacts to Octopush when you link a list and run sync.<\/p><\/dd>\n<dt id=\"how%20does%20it%20scale%20for%20large%20stores%3F\"><h3>How does it scale for large stores?<\/h3><\/dt>\n<dd><p>For most stores you can use the defaults, but there are filters to safely tune performance, with <strong>enterprise-friendly defaults already applied<\/strong>:<\/p>\n\n<ul>\n<li><strong>Woo contacts loaded at once<\/strong> \u2013 filter <code>octopush_pro_get_woo_contacts_limit<\/code> (default <code>100000<\/code>). Increase or decrease depending on your memory budget.<\/li>\n<li><strong>Backfill from existing orders<\/strong> \u2013 filter <code>octopush_pro_backfill_woo_orders_limit<\/code> (default <code>100000<\/code>). Controls how many historic orders are scanned on first backfill.<\/li>\n<li><strong>Sync chunk size<\/strong> \u2013 filter <code>octopush_pro_sync_chunk_size<\/code> (default <code>100<\/code>). Controls how many contacts are sent to Octopush per API call.<\/li>\n<li><strong>Abandoned cart contacts per page (admin)<\/strong> \u2013 filter <code>octopush_pro_admin_abandoned_contacts_per_page<\/code> (default <code>1000<\/code>). Controls how many contacts are shown per page in the dashboard.<\/li>\n<li><strong>Reports rows per page<\/strong> \u2013 filter <code>octopush_pro_reports_per_page<\/code> (default <code>100<\/code>). Controls how many log entries are shown per page.<\/li>\n<li><strong>Abandoned capture cooldown<\/strong> \u2013 filter <code>octopush_pro_abandoned_capture_cooldown<\/code> (default <code>5<\/code> seconds between captures per session). You can tune this for stricter anti\u2011spam.<\/li>\n<li><strong>Log &amp; cart retention<\/strong> \u2013 filters <code>octopush_pro_log_retention_days<\/code> (default <code>365<\/code>) and <code>octopush_pro_cart_retention_days<\/code> (default <code>730<\/code>). Raise, lower, or disable (set to <code>0<\/code>) depending on your compliance and storage needs.<\/li>\n<\/ul>\n\n<p>Recommended starting points:<\/p>\n\n<ul>\n<li><strong>Small stores (\u226410k customers)<\/strong> \u2013 keep defaults or modestly increase limits.<\/li>\n<li><strong>Medium stores (~10k\u2013100k customers)<\/strong> \u2013 Woo contacts\/backfill limits around <code>50_000<\/code>, sync chunk size <code>50\u2013100<\/code>, reports <code>50\u2013100<\/code> rows per page.<\/li>\n<li><strong>Large\/enterprise (100k+ customers)<\/strong> \u2013 Woo contacts\/backfill limits <code>100_000+<\/code> (or use batched exports), sync chunk size <code>100\u2013250<\/code>, and longer retention (365+ days) combined with external log archiving.<\/li>\n<\/ul><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.1.13<\/h4>\n\n<ul>\n<li>Mark compatibility with WordPress 7.0 (<code>Tested up to: 7.0<\/code>).<\/li>\n<\/ul>\n\n<h4>1.1.12<\/h4>\n\n<ul>\n<li>Fix checkout fatal on PHP 8+ by aligning <code>woocommerce_checkout_order_created<\/code> callback arguments with WooCommerce hook signature.<\/li>\n<li>Add Store API checkout compatibility bridge via <code>woocommerce_store_api_checkout_order_processed<\/code> for Checkout Block flows.<\/li>\n<\/ul>\n\n<h4>1.1.11<\/h4>\n\n<ul>\n<li>Update plugin author metadata to Muhammad Hamza with WordPress.org profile URL.<\/li>\n<\/ul>\n\n<h4>1.1.10<\/h4>\n\n<ul>\n<li>Ensures readme Stable tag and plugin version match the published release on WordPress.org.<\/li>\n<\/ul>\n\n<h4>1.1.7<\/h4>\n\n<ul>\n<li>Credit developer Muhammad Hamza in plugin metadata; add WordPress.org contributor profile.<\/li>\n<\/ul>\n\n<h4>1.1.6<\/h4>\n\n<ul>\n<li>Improve plugin short description text to be clearer and more conversion-focused in the plugin listing.<\/li>\n<\/ul>\n\n<h4>1.1.5<\/h4>\n\n<ul>\n<li>Readme: update Octopush terms of service (CGU) link to https:\/\/octopush.com\/conditions-generales-d-utilisation\/ .<\/li>\n<\/ul>\n\n<h4>1.1.4<\/h4>\n\n<ul>\n<li>Rename main plugin file to <code>octopush-sms-automation-cart-recovery.php<\/code> (matches WordPress.org plugin slug).<\/li>\n<li>Document Octopush central cron (<code>https:\/\/octopush.com\/wordpress-cron\/<\/code>) under External services in this readme (registration\/unregistration, data sent, when).<\/li>\n<\/ul>\n\n<h4>1.1.3<\/h4>\n\n<ul>\n<li>Rebrand plugin name, slug, and text domain to <code>octopush-sms-automation-cart-recovery<\/code> (no functional logic changes).<\/li>\n<\/ul>\n\n<h4>1.1.2<\/h4>\n\n<ul>\n<li>Abandoned cart SMS to French (+33) numbers: append mandatory Octopush STOP clause <code>[STOP Au 30101]<\/code> and align API purpose with campaigns (fixes HTTP 400 when STOP was missing).<\/li>\n<\/ul>\n\n<h4>1.1.1<\/h4>\n\n<ul>\n<li>Maintenance release; version bump to 1.1.1.<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>Remove macOS <code>.DS_Store<\/code> from the plugin tree; packaging notes in <code>PACKAGING.txt<\/code> (WordPress plugin ZIP must not contain dotfiles such as <code>.gitignore<\/code> \u2014 Plugin Check <code>hidden_files<\/code>).<\/li>\n<li>Version bump to 1.1.0.<\/li>\n<\/ul>\n\n<h4>1.0.10<\/h4>\n\n<ul>\n<li>Internal cleanup for release packaging (remove hidden files such as .DS_Store).<\/li>\n<\/ul>\n\n<h4>1.0.9<\/h4>\n\n<ul>\n<li>Country dropdown arrow size increased by 40% in abandoned cart (popup and inline) and in Settings Store Owner Phone field.<\/li>\n<\/ul>\n\n<h4>1.0.8<\/h4>\n\n<ul>\n<li>Store Owner Phone dropdown in Settings now shows the country flag next to each option in the list.<\/li>\n<\/ul>\n\n<h4>1.0.7<\/h4>\n\n<ul>\n<li>Store Owner Phone in Settings now uses the same searchable country dropdown as the abandoned cart popup and inline field (country name + code, searchable, flag + code when selected).<\/li>\n<li>Abandoned cart phone field: dropdown visibility fix, larger arrow, country code visibility and padding improvements.<\/li>\n<\/ul>\n\n<h4>1.0.6<\/h4>\n\n<ul>\n<li>Settings page: plugin version is now shown above \"Connection Status &amp; Balance\".<\/li>\n<li>Abandoned cart phone field: UI polish (focus states, symmetric padding, country dropdown styling).<\/li>\n<\/ul>\n\n<h4>1.0.5<\/h4>\n\n<ul>\n<li>Abandoned cart popup and inline: country code dropdown now shows country name and code (e.g. \"France (+33)\") and is searchable by country name or dial code.<\/li>\n<\/ul>\n\n<h4>1.0.4<\/h4>\n\n<ul>\n<li>Show plugin version on the Settings page so merchants can confirm which version they are running.<\/li>\n<\/ul>\n\n<h4>1.0.3<\/h4>\n\n<ul>\n<li>Automatically enable central cron on activation when available.<\/li>\n<li>Improve cleanup of non-abandoned carts after normal checkout so the Abandoned Carts report stays accurate.<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Internal improvements and cron reliability fixes.<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<li>SMS automation (customers, owner, abandoned carts), campaigns, contacts sync, abandoned cart popup and inline capture, reports, live chat widget.<\/li>\n<\/ul>","raw_excerpt":"Recover more sales with Octopush for WooCommerce: automated SMS, abandoned-cart recovery, campaigns, contact sync, and optional live chat.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/287977","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=287977"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/octopush"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=287977"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=287977"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=287977"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=287977"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=287977"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=287977"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}