diff --git src/wp-includes/general-template.php src/wp-includes/general-template.php
index f88a5f7..db2cdc0 100644
--- src/wp-includes/general-template.php
+++ src/wp-includes/general-template.php
@@ -1718,11 +1718,15 @@ function the_date( $d = '', $before = '', $after = '', $echo = true ) {
  *
  * @param  string      $d    Optional. PHP date format defaults to the date_format option if not specified.
  * @param  int|WP_Post $post Optional. Post ID or WP_Post object. Default current post.
- * @return string Date the current post was written.
+ * @return string Date the current post was written or empty string if post could not be determined.
  */
 function get_the_date( $d = '', $post = null ) {
 	$post = get_post( $post );
 
+	if ( ! $post ) {
+		return '';
+	}
+
 	if ( '' == $d ) {
 		$the_date = mysql2date( get_option( 'date_format' ), $post->post_date );
 	} else {
@@ -1832,11 +1836,16 @@ function the_time( $d = '' ) {
  *                          was written. Either 'G', 'U', or php date format defaults
  *                          to the value specified in the time_format option. Default empty.
  * @param int|WP_Post $post WP_Post object or ID. Default is global $post object.
- * @return string|int Formatted date string, or Unix timestamp.
+ * @return string|int Formatted date string, Unix timestamp or empty string if post
+ *                          could not be determined.
  */
 function get_the_time( $d = '', $post = null ) {
 	$post = get_post($post);
 
+	if ( ! $post ) {
+		return '';
+	}
+
 	if ( '' == $d )
 		$the_time = get_post_time(get_option('time_format'), false, $post, true);
 	else
@@ -1866,11 +1875,16 @@ function get_the_time( $d = '', $post = null ) {
  * @param bool        $gmt       Optional. Whether to retrieve the GMT time. Default false.
  * @param int|WP_Post $post      WP_Post object or ID. Default is global $post object.
  * @param bool        $translate Whether to translate the time string. Default false.
- * @return string|int Formatted date string, or Unix timestamp.
+ * @return string|int Formatted date string, Unix timestamp or empty string if post
+ *                               could not be determined.
  */
 function get_post_time( $d = 'U', $gmt = false, $post = null, $translate = false ) {
 	$post = get_post($post);
 
+	if ( ! $post ) {
+		return '';
+	}
+
 	if ( $gmt )
 		$time = $post->post_date_gmt;
 	else
@@ -1948,11 +1962,15 @@ function get_the_modified_time($d = '') {
  * @param bool $gmt Optional, default is false. Whether to return the gmt time.
  * @param int|object $post Optional, default is global post object. A post_id or post object
  * @param bool $translate Optional, default is false. Whether to translate the result
- * @return string Returns timestamp
+ * @return string Returns timestamp or empty string if post could not be determined.
  */
 function get_post_modified_time( $d = 'U', $gmt = false, $post = null, $translate = false ) {
 	$post = get_post($post);
 
+	if ( ! $post ) {
+		return '';
+	}
+
 	if ( $gmt )
 		$time = $post->post_modified_gmt;
 	else
