Action hooks

Developers can insert their own content into the order form without the need to customise templates, by hooking the available action hooks. There are many useful action hooks supported by the default templates, the plugin core, and WooCommerce itself.

Here’s some example code that uses these action hooks:

  • orderform_woocommerce_before_order_grid_qty

    • array $attrs — the shortcode attributes for the order form

    Fires before the item count in the order summary for grid templates.

  • orderform_woocommerce_before_order_grid_subtotal

    • array $attrs — the shortcode attributes for the order form

    Fires before the form subtotal for grid templates.

  • orderform_woocommerce_before_order_image

    • WC_Product $product — the WooCommerce product
    • array $attrs — the shortcode attributes for the order form

    Fires inside the product item row, before the product image column.

  • orderform_woocommerce_before_order_image_foot

    • array $attrs — the shortcode attributes for the order form

    Fires inside the order form footer, before the product image column.

  • orderform_woocommerce_before_order_image_head

    • array $attrs — the shortcode attributes for the order form

    Fires inside the order form header, before the product image column.

  • orderform_woocommerce_before_order_item

    • WC_Product $product — the WooCommerce product
    • array $attrs — the shortcode attributes for the order form

    Fires inside the product item row, before the product title column.

  • orderform_woocommerce_before_order_item_foot

    • array $attrs — the shortcode attributes for the order form

    Fires inside the order form footer, before the product title column.

  • orderform_woocommerce_before_order_item_head

    • array $attrs — the shortcode attributes for the order form

    Fires inside the order form header, before the product title column.

  • orderform_woocommerce_before_order_price

    • WC_Product $product — the WooCommerce product
    • array $attrs — the shortcode attributes for the order form

    Fires inside the product item row, before the price column.

  • orderform_woocommerce_before_order_price_foot

    • array $attrs — the shortcode attributes for the order form

    Fires inside the order form footer, before the price column.

  • orderform_woocommerce_before_order_price_head

    • array $attrs — the shortcode attributes for the order form

    Fires inside the order form header, before the price column.

  • orderform_woocommerce_before_order_qty

    • WC_Product $product — the WooCommerce product
    • array $attrs — the shortcode attributes for the order form

    Fires inside the product item row, before the quantity column.

  • orderform_woocommerce_before_order_qty_foot

    • array $attrs — the shortcode attributes for the order form

    Fires inside the order form footer, before the quantity column.

  • orderform_woocommerce_before_order_qty_head

    • array $attrs — the shortcode attributes for the order form

    Fires inside the order form header, before the quantity column.

  • orderform_woocommerce_before_order_rowtotal

    • WC_Product $product — the WooCommerce product
    • array $attrs — the shortcode attributes for the order form

    Fires inside the product item row, before the row total column.

  • orderform_woocommerce_before_order_rowtotal_foot

    • array $attrs — the shortcode attributes for the order form

    Fires inside the order form footer, before the row total column.

  • orderform_woocommerce_before_order_rowtotal_head

    • array $attrs — the shortcode attributes for the order form

    Fires inside the order form header, before the row total column.

  • orderform_woocommerce_form_after

    • array $attrs — the shortcode attributes for the order form

    Fires inside the order form wrapper div, after the form element.

  • orderform_woocommerce_form_before

    • array $attrs — the shortcode attributes for the order form

    Fires inside the order form wrapper div, before the form element.

  • orderform_woocommerce_form_end

    • array $attrs — the shortcode attributes for the order form

    Fires inside the form element, after the form content.

  • orderform_woocommerce_form_start

    • array $attrs — the shortcode attributes for the order form

    Fires inside the form element, before the form content.

  • orderform_woocommerce_item_card_after

    • WC_Product $product — the WooCommerce product
    • array $attrs — the shortcode attributes for the order form

    Fires after each product card / row in a grid template.

  • orderform_woocommerce_item_card_before

    • WC_Product $product — the WooCommerce product
    • array $attrs — the shortcode attributes for the order form

    Fires before each product card / row in a grid template.

  • orderform_woocommerce_item_row_after

    • WC_Product $product — the WooCommerce product
    • array $attrs — the shortcode attributes for the order form

    Fires after a product row in the order form.

  • orderform_woocommerce_item_row_before

    • WC_Product $product — the WooCommerce product
    • array $attrs — the shortcode attributes for the order form

    Fires before a product row in the order form.

  • orderform_woocommerce_order_item_end

    • WC_Product $product — the WooCommerce product
    • array $attrs — the shortcode attributes for the order form

    Fires inside the product item column, after the product title and link.

  • orderform_woocommerce_order_item_start

    • WC_Product $product — the WooCommerce product
    • array $attrs — the shortcode attributes for the order form

    Fires inside the product item column, before the product title and link.

  • orderform_woocommerce_product_end

    • WC_Product $product — the WooCommerce product
    • array $attrs — the shortcode attributes for the order form

    Fires inside the product container, after other elements are rendered.

  • orderform_woocommerce_product_start

    • WC_Product $product — the WooCommerce product
    • array $attrs — the shortcode attributes for the order form

    Fires inside the product container, before other elements are rendered.