You have two issues here:
- Conditional tags (
is_single()
) should not be used so early infunctions.php
. - Your removal function is getting hooked to run after function it’s meant to remove.
It should be something like this:
function remove_shc() {
if ( is_single( array( 17, 19, 1, 11 ) ) )
remove_action( 'wp_print_scripts', 'wp_shc_head_scripts' );
}
add_action( 'wp_enqueue_scripts', 'remove_shc' );