Index: src/bp-templates/bp-legacy/buddypress/members/register.php
--- src/bp-templates/bp-legacy/buddypress/members/register.php
+++ src/bp-templates/bp-legacy/buddypress/members/register.php
@@ -63,7 +63,7 @@
 					<h4><?php _e( 'Profile Details', 'buddypress' ); ?></h4>
 
 					<?php /* Use the profile field loop to render input fields for the 'base' profile field group */ ?>
-					<?php if ( bp_is_active( 'xprofile' ) ) : if ( bp_has_profile( array( 'profile_group_id' => 1, 'fetch_field_data' => false ) ) ) : while ( bp_profile_groups() ) : bp_the_profile_group(); ?>
+					<?php if ( bp_is_active( 'xprofile' ) ) : if ( bp_has_profile_signup() ) : while ( bp_profile_groups() ) : bp_the_profile_group(); ?>
 
 					<?php while ( bp_profile_fields() ) : bp_the_profile_field(); ?>
 
Index: src/bp-xprofile/bp-xprofile-template.php
--- src/bp-xprofile/bp-xprofile-template.php
+++ src/bp-xprofile/bp-xprofile-template.php
@@ -298,6 +298,25 @@
 	return apply_filters( 'bp_has_profile', $profile_template->has_groups(), $profile_template );
 }
 
+/**
+ * Query XProfile fields used during signup in `register.php` template part
+ *
+ * @since BuddyPress (2.3.0)
+ *
+ * @param mixed $args
+ */
+function bp_has_profile_signup( $args = '' ) {
+
+	// Parse signup arguments
+	$r = bp_parse_args( $args, array(
+		'profile_group_id' => 1,
+		'fetch_field_data' => false
+	), 'signup_fields' );
+
+	// Query for profile fields to show in signup
+	return bp_has_profile( $r );
+}
+
 function bp_profile_groups() {
 	global $profile_template;
 	return $profile_template->profile_groups();
