You miss the required remove_action()
parameter — the name of the function to remove. See the Code Reference.
<?php
add_action( 'woocommerce_login_form', 'woocom_extra_register_fields' );
function woocom_extra_register_fields () {
if ( is_page( 'installation' ) ) {
remove_action( 'woocommerce_login_form', 'woocom_extra_register_fields', 10 ); // note this
}
}
I suspect the code you’ve posted is not complete, so, adding the action to remove the action itself looks odd. Simplify things to avoid superfluous operations:
<?php
add_action( 'woocommerce_login_form', 'woocom_extra_register_fields' );
function woocom_extra_register_fields () {
// check you are NOT on the 'installation' page
if ( ! is_page( 'installation' ) ) {
// do your extra fields here
}
}