Fork me on GitHub

Doing a search within the shop module code for ->extend( will reveal the various points where you can call extensions via decorators/extension classes.

Here is a (possibly incomplete) list of hooks you can use by extending various classes:

TODO: provide context/use information for each hook

Product

  • updateImport - called from ProductBulkLoader

Product_OrderItem

  • updateUnitPrice
  • updateTableTitle
  • updateTableSubTitle
  • updateDebug

ProductBulkLoader

  • updateColumnMap - for defining additional fields/functions that will process the specific CSV file values

Buyable

  • updateItemFilter
  • updateDummyItem
  • updateLinkParameters

ShopMember

  • augmentEcommerceFields
  • augmentEcommerceRequiredFields

OrderForm

  • updateValidator - mainly used to update required fields
  • updateFields - update the form fields
  • updateForm - other form changes

ShopAccountForm

  • updateShopAccountForm

Order

  • onInit
  • onCalculate

OrderItem

  • updateTotal
  • updateLinkParameters