This code snippet is useful for situations like creating separate Login and Registration pages.
<?php
add_shortcode("wc_login_form_wptu", "wptu_separate_login_form");
function wptu_separate_login_form()
{
if (is_user_logged_in()) {
return "<p>You are already logged in</p>";
}
ob_start();
do_action("woocommerce_before_customer_login_form");
woocommerce_login_form(["redirect" => wc_get_page_permalink("myaccount")]);
return ob_get_clean();
}