Skip to content

6.3.4

Compare
Choose a tag to compare
@michelve michelve released this 06 Dec 21:34
· 2 commits to master since this release

feat: Add custom block category "SLM Plus" and improve shortcode blocks

  • Registered a new block category "SLM Plus" for better organization.
  • Updated "Forgot License" and "List Licenses" blocks to assign them to the custom category.
  • Improved block editor previews for both blocks:
    • "Forgot License" block displays a preview with a form placeholder.
    • "List Licenses" block displays a preview with a sample list of licenses.
  • Fixed issues with blocks appearing under "Uncategorized" by ensuring proper category registration.
  • Ensured unique naming in block scripts to avoid conflicts.
  • Added clear styles for block previews and frontend rendering in slm-blocks.css.
  • Verified shortcode functionality for rendering licenses dynamically.

How to Use the New Shortcodes and Blocks

Shortcodes:

  1. Forgot License: [slm_forgot_license]

    • Displays a form where users can enter their email to retrieve license information.
    • Can be added to any page or post manually.
  2. List Licenses: [slm_list_licenses]

    • Dynamically displays a table of licenses associated with the logged-in user.
    • Useful for pages where users manage their licenses.

Blocks:

  1. Forgot License Block:

    • Found under the "SLM Plus" category in the block editor.
    • Provides an interactive form preview in the editor.
    • On the frontend, renders the [slm_forgot_license] shortcode.
  2. List Licenses Block:

    • Found under the "SLM Plus" category in the block editor.
    • Displays a placeholder list of licenses in the editor.
    • On the frontend, renders the [slm_list_licenses] shortcode dynamically.

Additional Notes

  • Ensure that slm-blocks.js and slm-blocks.css are correctly enqueued for the blocks and styles to work.
  • Blocks and shortcodes are fully compatible with logged-in user sessions for personalized license management.

feat: New license renewal workflow and enhanced templates

Features

  • New License Renewal Workflow:
    • Tracks historical orders and updates the associated_orders column for licenses.
    • Ensures seamless handling of WooCommerce order IDs during renewals.
  • Enhanced Templates:
    • Added templates for license management, including:
      • Renewal pages.
      • License product suggestions for empty carts.

Improvements

  • License Creation Enhancements:
    • Refactored wc_slm_create_new_license to manage:
      • Expiration dates.
      • Logging.
      • Associated orders for traceability.
  • Database Updates:
    • Added missing columns (e.g., associated_orders) with proper schema management.
    • Ensured backward compatibility and smoother upgrades.
  • Utility Functions:
    • Enhanced SLM_Utility::slm_get_associated_orders to retrieve well-formatted data for associated orders.

Fixes

  • Metadata Dependency:
    • Replaced _slm_lic_key usage with database lookups to improve accuracy and reliability.
  • Database Versioning:
    • Fixed database version handling logic to ensure schema updates are properly applied.

Templates

  • License Cart Template:
    • Displays suggested license products when the cart is empty.
    • Dynamically handles renewal messages and new license purchases.

Notes

  • The new renewal workflow improves traceability by appending historical orders to the associated_orders column.
  • Templates integrate seamlessly with WooCommerce workflows, providing a consistent and user-friendly experience.