use Automattic\WooCommerce\Blocks\Package; use Automattic\WooCommerce\Blocks\Domain\Services\CheckoutFields; if ( ! function_exists( 'woocommerce_register_additional_checkout_field' ) ) { /** * Register a checkout field. * * @param array $options Field arguments. See CheckoutFields::register_checkout_field() for details. * @throws \Exception If field registration fails. */ function woocommerce_register_additional_checkout_field( $options ) { // phpcs:ignore WordPress.NamingConventions.ValidFunctionName.FunctionDoubleUnderscore,PHPCompatibility.FunctionNameRestrictions.ReservedFunctionNames.FunctionDoubleUnderscore // Check if `woocommerce_blocks_loaded` ran. If not then the CheckoutFields class will not be available yet. // In that case, re-hook `woocommerce_blocks_loaded` and try running this again. $woocommerce_blocks_loaded_ran = did_action( 'woocommerce_blocks_loaded' ); if ( ! $woocommerce_blocks_loaded_ran ) { add_action( 'woocommerce_blocks_loaded', function () use ( $options ) { woocommerce_register_additional_checkout_field( $options ); } ); return; } $checkout_fields = Package::container()->get( CheckoutFields::class ); $result = $checkout_fields->register_checkout_field( $options ); if ( is_wp_error( $result ) ) { throw new \Exception( esc_attr( $result->get_error_message() ) ); } } } if ( ! function_exists( '__experimental_woocommerce_blocks_register_checkout_field' ) ) { /** * Register a checkout field. * * @param array $options Field arguments. See CheckoutFields::register_checkout_field() for details. * @throws \Exception If field registration fails. * @deprecated 5.6.0 Use woocommerce_register_additional_checkout_field() instead. */ function __experimental_woocommerce_blocks_register_checkout_field( $options ) { // phpcs:ignore WordPress.NamingConventions.ValidFunctionName.FunctionDoubleUnderscore,PHPCompatibility.FunctionNameRestrictions.ReservedFunctionNames.FunctionDoubleUnderscore wc_deprecated_function( __FUNCTION__, '8.9.0', 'woocommerce_register_additional_checkout_field' ); woocommerce_register_additional_checkout_field( $options ); } } if ( ! function_exists( '__internal_woocommerce_blocks_deregister_checkout_field' ) ) { /** * Deregister a checkout field. * * @param string $field_id Field ID. * @throws \Exception If field deregistration fails. * @internal */ function __internal_woocommerce_blocks_deregister_checkout_field( $field_id ) { // phpcs:ignore WordPress.NamingConventions.ValidFunctionName.FunctionDoubleUnderscore,PHPCompatibility.FunctionNameRestrictions.ReservedFunctionNames.FunctionDoubleUnderscore $checkout_fields = Package::container()->get( CheckoutFields::class ); $result = $checkout_fields->deregister_checkout_field( $field_id ); if ( is_wp_error( $result ) ) { throw new \Exception( esc_attr( $result->get_error_message() ) ); } } } Instructor - UrielKids
Cover image
User Avatar

Vidhi

16 Students
5 Courses
  • Seasons

    Course Description Seasons are a very important part of our lfe. Seasons sffect what we wear, what we eat and what we do during...

    41
    2
    students
    Free
  • Pre Math Concepts

    Course Description Preschool marks an important time in a child’s development.Pre math concepts are being used by children throughout their activities, experiences and daily...

    27
    0
    student
    Free
  • India – My Country

    Course Description Historians, writers, politicians and other eminent personalities across the Globe have greatly appreciated India and its contribution to rest of the world....

    37
    1
    student
    Free
  • Counting Numbers

    Course Description Counting various quantities is the foremost human activity in which children engage beginning at a very tender age. Counting numbers are very...

    26
    8
    students
    Free
  • My Neighbourhood

    Course Description The area and the places that are around our homes is our neighbourhood. Children grow up in different social environments. Knowing about...

    19
    5
    students
    Free