Index: wp-includes/default-filters.php
===================================================================
--- wp-includes/default-filters.php	(revision 20266)
+++ wp-includes/default-filters.php	(working copy)
@@ -193,6 +193,7 @@
 add_filter( 'nav_menu_meta_box_object', '_wp_nav_menu_meta_box_object'        );
 
 // Actions
+add_action( 'load_header',         'load_header'                            );
 add_action( 'wp_head',             'wp_enqueue_scripts',              1     );
 add_action( 'wp_head',             'feed_links',                      2     );
 add_action( 'wp_head',             'feed_links_extra',                3     );
@@ -206,6 +207,7 @@
 add_action( 'wp_head',             'wp_print_head_scripts',            9    );
 add_action( 'wp_head',             'wp_generator'                           );
 add_action( 'wp_head',             'rel_canonical'                          );
+add_action( 'load_footer',         'load_footer'                            );
 add_action( 'wp_footer',           'wp_print_footer_scripts',         20    );
 add_action( 'wp_head',             'wp_shortlink_wp_head',            10, 0 );
 add_action( 'template_redirect',   'wp_shortlink_header',             11, 0 );
Index: wp-includes/general-template.php
===================================================================
--- wp-includes/general-template.php	(revision 20266)
+++ wp-includes/general-template.php	(working copy)
@@ -15,24 +15,15 @@
  * For the parameter, if the file is called "header-special.php" then specify
  * "special".
  *
- * @uses locate_template()
  * @since 1.5.0
  * @uses do_action() Calls 'get_header' action.
+ * @uses do_action() Calls 'load_header' action.
  *
  * @param string $name The name of the specialised header.
  */
 function get_header( $name = null ) {
 	do_action( 'get_header', $name );
-
-	$templates = array();
-	if ( isset($name) )
-		$templates[] = "header-{$name}.php";
-
-	$templates[] = 'header.php';
-
-	// Backward compat code will be removed in a future release
-	if ('' == locate_template($templates, true))
-		load_template( ABSPATH . WPINC . '/theme-compat/header.php');
+	do_action( 'load_header', $name );
 }
 
 /**
@@ -44,24 +35,15 @@
  * For the parameter, if the file is called "footer-special.php" then specify
  * "special".
  *
- * @uses locate_template()
  * @since 1.5.0
  * @uses do_action() Calls 'get_footer' action.
+ * @uses do_action() Calls 'load_footer' action.
  *
  * @param string $name The name of the specialised footer.
  */
 function get_footer( $name = null ) {
 	do_action( 'get_footer', $name );
-
-	$templates = array();
-	if ( isset($name) )
-		$templates[] = "footer-{$name}.php";
-
-	$templates[] = 'footer.php';
-
-	// Backward compat code will be removed in a future release
-	if ('' == locate_template($templates, true))
-		load_template( ABSPATH . WPINC . '/theme-compat/footer.php');
+	do_action( 'load_footer', $name );
 }
 
 /**
Index: wp-includes/template.php
===================================================================
--- wp-includes/template.php	(revision 20266)
+++ wp-includes/template.php	(working copy)
@@ -392,3 +392,54 @@
 		require( $_template_file );
 }
 
+/**
+ * Load header template.
+ *
+ * Includes the header template for a theme or if a name is specified then a
+ * specialised header will be included.
+ *
+ * For the parameter, if the file is called "header-special.php" then specify
+ * "special".
+ *
+ * @since 3.4
+ * @uses locate_template()
+ *
+ * @param string $name The name of the specialised header.
+ */
+function load_header( $name = null ) {
+	$templates = array();
+	if ( isset($name) )
+		$templates[] = "header-{$name}.php";
+
+	$templates[] = 'header.php';
+
+	// Backward compat code will be removed in a future release
+	if ('' == locate_template($templates, true))
+		load_template( ABSPATH . WPINC . '/theme-compat/header.php');
+}
+
+/**
+ * Load footer template.
+ *
+ * Includes the footer template for a theme or if a name is specified then a
+ * specialised footer will be included.
+ *
+ * For the parameter, if the file is called "footer-special.php" then specify
+ * "special".
+ *
+ * @since 3.4
+ * @uses locate_template()
+ *
+ * @param string $name The name of the specialised footer.
+ */
+function load_footer( $name = null ) {
+	$templates = array();
+	if ( isset($name) )
+		$templates[] = "footer-{$name}.php";
+
+	$templates[] = 'footer.php';
+
+	// Backward compat code will be removed in a future release
+	if ('' == locate_template($templates, true))
+		load_template( ABSPATH . WPINC . '/theme-compat/footer.php');
+}
