diff --git src/bp-templates/bp-nouveau/buddypress/common/js-templates/messages/index.php src/bp-templates/bp-nouveau/buddypress/common/js-templates/messages/index.php
index b75b16b14..d36a30ba3 100644
--- src/bp-templates/bp-nouveau/buddypress/common/js-templates/messages/index.php
+++ src/bp-templates/bp-nouveau/buddypress/common/js-templates/messages/index.php
@@ -8,11 +8,12 @@
  * @since 3.0.0
  * @version 10.0.0
  */
-?>
-<div class="subnav-filters filters user-subnav bp-messages-filters" id="subsubnav"></div>
 
-<div class="bp-messages-feedback"></div>
-<div class="bp-messages-content"></div>
+// Backward Compatibility for plugins still needing the placeholders to be located into this file.
+if ( ! did_action( '_bp_nouveau_messages_print_placeholders' ) ) {
+	bp_nouveau_messages_print_placeholders();
+}
+?>
 
 <script type="text/html" id="tmpl-bp-messages-feedback">
 	<div class="bp-feedback {{data.type}}">
diff --git src/bp-templates/bp-nouveau/buddypress/members/single/messages.php src/bp-templates/bp-nouveau/buddypress/members/single/messages.php
index a4f7b588a..d509bd235 100644
--- src/bp-templates/bp-nouveau/buddypress/members/single/messages.php
+++ src/bp-templates/bp-nouveau/buddypress/members/single/messages.php
@@ -2,6 +2,7 @@
 /**
  * BuddyPress - Users Messages
  *
+ * @since 3.0.0
  * @version 3.0.0
  */
 ?>
diff --git src/bp-templates/bp-nouveau/includes/messages/template-tags.php src/bp-templates/bp-nouveau/includes/messages/template-tags.php
index 9dcc4ea64..003f34a46 100644
--- src/bp-templates/bp-nouveau/includes/messages/template-tags.php
+++ src/bp-templates/bp-nouveau/includes/messages/template-tags.php
@@ -38,6 +38,29 @@ function bp_nouveau_messages_hook( $when = '', $suffix = '' ) {
 	bp_nouveau_hook( $hook );
 }
 
+/**
+ * Prints the JS Templates of the private messages UI.
+ *
+ * @since 10.0.0
+ */
+function bp_nouveau_messages_print_templates() {
+	bp_get_template_part( 'common/js-templates/messages/index' );
+}
+
+/**
+ * Prints the HTML placeholders of the private messages UI.
+ *
+ * @since 10.0.0
+ */
+function bp_nouveau_messages_print_placeholders() {
+	?>
+	<div class="subnav-filters filters user-subnav bp-messages-filters" id="subsubnav"></div>
+
+	<div class="bp-messages-feedback"></div>
+	<div class="bp-messages-content"></div>
+	<?php
+}
+
 /**
  * Load the new Messages User Interface
  *
@@ -51,8 +74,24 @@ function bp_nouveau_messages_member_interface() {
 	 */
 	do_action( 'bp_before_member_messages_content' );
 
+	/**
+	 * Load the JS templates to manage Priveate Messages into site's footer.
+	 *
+	 * @since 10.0.0 Hook to the `wp_footer` action to print the JS templates.
+	 */
+	add_action( 'wp_footer', 'bp_nouveau_messages_print_templates' );
+	bp_nouveau_messages_print_placeholders();
+
+	/**
+	 * Private hook to preserve backward compatibility with plugins needing the above placeholders to be located
+	 * into: `bp-templates/bp-nouveau/buddypress/common/js-templates/messahges/index.php`.
+	 *
+	 * @since 10.0.0
+	 */
+	do_action( '_bp_nouveau_messages_print_placeholders' );
+
 	// Load the Private messages UI
-	bp_get_template_part( 'common/js-templates/messages/index' );
+
 
 	/**
 	 * Fires after the member messages content.
