Insira uma linha total personalizada no carrinho e faça o checkout no Woocommerce

No woocommerce, consegui adicionar um campo personalizado a um produto simples do Woocommerce e exibir esse valor na guia informações adicionais em uma página do produto.

Agora estou totalmente perdido com a peça final do meu quebra-cabeça tentando inserir uma linha total no carrinho e nas páginas de checkout com o volume total calculado.

O campo personalizado é armazenar o volume em m3 de um item de mobiliário. Quando um cliente adiciona um item à cesta, eu gostaria de calcular o total de m3 da remessa adicionando os valores de todos os campos personalizados e exibindo o total para o cliente na página. Alguém pode me indicar a direção certa de como adicionar esses campos personalizados e exibi-los, por favor.

Até agora, meu código fica assim

    // Display Fields using WooCommerce Action Hook
add_action( 'woocommerce_product_options_general_product_data', 'woocom_general_product_data_custom_field' );

function woocom_general_product_data_custom_field() {
  // Create a custom text field


  // Number Field
  woocommerce_wp_text_input( 
    array( 
      'id' => '_item_volume', 
      'label' => __( 'Item Shipping Volume', 'woocommerce' ), 
      'placeholder' => '', 
      'description' => __( 'Enter the volume her in m3.', 'woocommerce' ),
      'type' => 'number', 
      'custom_attributes' => array(
         'step' => 'any',
         'min' => '0.001'
      ) 
    )
  );

}

// Hook to save the data value from the custom fields
add_action( 'woocommerce_process_product_meta', 'woocom_save_general_proddata_custom_field' );

/** Hook callback function to save custom fields information */
function woocom_save_general_proddata_custom_field( $post_id ) {

  // Save Number Field
  $number_field = $_POST['_item_volume'];
  if( ! empty( $number_field ) ) {
     update_post_meta( $post_id, '_item_volume', esc_attr( $number_field ) );
  }

}

add_action( 'woocommerce_product_additional_information', 'custom_data_in_product_add_info_tab', 20, 1 );
function custom_data_in_product_add_info_tab( $product ) {

    //Product ID - WooCommerce compatibility
    $product_id = method_exists( $product, 'get_id' ) ? $product->get_id() : $product->id;

    // Get your custom fields data
    $custom_field1 = get_post_meta( $product_id, '_item_volume', true );


    // Set your custom fields labels (or names)
    $label1 = __( 'Shipping Volume m3', 'woocommerce');


    // The Output
    echo '<h3>'. __('Item Shipping Volume', 'woocommerce') .'</h3>
    <table class="custom-fields-data">
        <tbody>
            <tr class="custom-field1">
                <th>'. $label1 .'</th>
                <td>'. $custom_field1 .'</td>
            </tr>
        </tbody>
    </table>';
}

questionAnswers(1)

yourAnswerToTheQuestion