Repository navigation
v1.2.3
Hardening release from the wordpress.org plugin review, on top of the 1.2.1 and 1.2.2 changes that had not yet been published here. No settings or behaviour change on upgrade.
1.2.3
- Storefront globals are JSON-encoded. The
__IDEA89_WCblock (Store API URL, nonce, basket URL) that the assistant reads on boot is now written withwp_json_encode()and the same hex-escaping as every other inline value, in place ofesc_js(). Same keys, same values. - In-chat checkout page is printed, not buffered. The stripped checkout page is written the way a page template is:
wp_head()andwp_footer()print themselves and every script element is printed by WordPress's own inline-script function, instead of the whole page being assembled into one string and echoed. Same page, same headers, same bridge messages.
1.2.2
- Widget loader is enqueued. The storefront loader goes through
wp_register_script/wp_enqueue_scriptwith its configuration attached viawp_add_inline_script, instead of a script tag printed in the footer. Other plugins and themes can now see and filter it like any other enqueued script. - Hardened inline JSON. Every value written into an inline script (checkout configuration, store finder analytics settings, store JSON-LD, checkout bridge messages) is JSON-encoded with
<,>,&,'and"hex-escaped, so no configured or merchant-entered value can close the script element early.
1.2.1
- Assistant name now sets the name shoppers see. The field under Appearance used to save a value nothing read. It is now the same name your IDEA89 account shows above the conversation, stored there so it is the same in both places.
- Checkout display, shared with your IDEA89 dashboard. New field under IDEA89 > Checkout experience: Full window (the default, unchanged behaviour) or In the chat. Changing it in WordPress or in the dashboard changes it in both.
- Personalization status is spelled out. The settings screen now says which of the two switches (WordPress and the IDEA89 dashboard) is on.
Requires WordPress 6.4+, WooCommerce, PHP 7.4+. Tested up to WordPress 7.1.