| 91 | * Get the timestamp of the most recently modified post from WP_Query |
| 92 | * |
| 93 | * If viewing a comment feed, the date of the most recently modified |
| 94 | * comment will be returned. |
| 95 | * |
| 96 | * @since 4.3.0 |
| 97 | * |
| 98 | * @return string Date ('Y-m-d H:i:s' for use with mysql2date() ) |
| 99 | */ |
| 100 | function get_last_build_date_feed() { |
| 101 | global $wp_query, $wpdb; |
| 102 | |
| 103 | if ( $wp_query->have_posts() ) { |
| 104 | $post_ids = array(); |
| 105 | foreach( $wp_query->posts as $post ) { |
| 106 | $post_ids[] = $post->ID; |
| 107 | } |
| 108 | $postids = implode( "','", $post_ids ); |
| 109 | |
| 110 | $max_post_time = $wpdb->get_var( $wpdb->prepare( "SELECT MAX($wpdb->posts.post_modified_gmt) FROM $wpdb->posts WHERE $wpdb->posts.ID IN ('%s')", $postids ) ); |
| 111 | |
| 112 | if( $wp_query->is_comment_feed() ) { |
| 113 | $max_comment_time = $wpdb->get_var( $wpdb->prepare( "SELECT MAX($wpdb->comments.comment_date_gmt) FROM $wpdb->comments WHERE $wpdb->comments.comment_post_ID IN ('%s')", $postids ) ); |
| 114 | return max( $max_post_time, $max_comment_time ); |
| 115 | } |
| 116 | return $max_post_time; |
| 117 | } |
| 118 | |
| 119 | // Fallback to last time any post was modified or published. |
| 120 | return get_lastpostmodified( 'GMT' ); |
| 121 | } |
| 122 | |
| 123 | /** |