Redirection from a specific page for users logged in but not with membership

Your code is fine to me, except you made a mistake here:

template_redirect('/product/channel-mcgilchrist');

WordPress does not have a function named template_redirect, only a hook with that name.

So you should have used either wp_redirect() or wp_safe_redirect() which are valid functions to perform URL/page redirections in WordPress.

wp_safe_redirect( '/product/channel-mcgilchrist' );