Changeset 41849
- Timestamp:
- 10/12/2017 03:19:30 PM (7 years ago)
- Location:
- trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/wp-includes/post.php
r41688 r41849 1729 1729 $post_id = $the_post; 1730 1730 1731 return add_metadata('post', $post_id, $meta_key, $meta_value, $unique); 1731 $added = add_metadata( 'post', $post_id, $meta_key, $meta_value, $unique ); 1732 if ( $added ) { 1733 wp_cache_set( 'last_changed', microtime(), 'posts' ); 1734 } 1735 return $added; 1732 1736 } 1733 1737 … … 1752 1756 $post_id = $the_post; 1753 1757 1754 return delete_metadata('post', $post_id, $meta_key, $meta_value); 1758 $deleted = delete_metadata( 'post', $post_id, $meta_key, $meta_value ); 1759 if ( $deleted ) { 1760 wp_cache_set( 'last_changed', microtime(), 'posts' ); 1761 } 1762 return $deleted; 1755 1763 } 1756 1764 … … 1794 1802 $post_id = $the_post; 1795 1803 1796 return update_metadata('post', $post_id, $meta_key, $meta_value, $prev_value); 1804 $updated = update_metadata( 'post', $post_id, $meta_key, $meta_value, $prev_value ); 1805 if ( $updated ) { 1806 wp_cache_set( 'last_changed', microtime(), 'posts' ); 1807 } 1808 return $updated; 1797 1809 } 1798 1810 … … 1806 1818 */ 1807 1819 function delete_post_meta_by_key( $post_meta_key ) { 1808 return delete_metadata( 'post', null, $post_meta_key, '', true ); 1820 $deleted = delete_metadata( 'post', null, $post_meta_key, '', true ); 1821 if ( $deleted ) { 1822 wp_cache_set( 'last_changed', microtime(), 'posts' ); 1823 } 1824 return $deleted; 1809 1825 } 1810 1826 -
trunk/tests/phpunit/tests/post/getPages.php
r35246 r41849 97 97 98 98 /** 99 * @ticket 40669 100 */ 101 public function test_cache_should_be_invalidated_by_add_post_meta() { 102 $posts = self::factory()->post->create_many( 2, array( 103 'post_type' => 'page', 104 ) ); 105 106 add_post_meta( $posts[0], 'foo', 'bar' ); 107 108 $cached = get_pages( array( 109 'meta_key' => 'foo', 110 'meta_value' => 'bar', 111 ) ); 112 113 $cached_ids = wp_list_pluck( $cached, 'ID' ); 114 $this->assertEqualSets( array( $posts[0] ), $cached_ids ); 115 116 add_post_meta( $posts[1], 'foo', 'bar' ); 117 118 $found = get_pages( array( 119 'meta_key' => 'foo', 120 'meta_value' => 'bar', 121 ) ); 122 123 $found_ids = wp_list_pluck( $found, 'ID' ); 124 $this->assertEqualSets( $posts, $found_ids ); 125 } 126 127 /** 128 * @ticket 40669 129 */ 130 public function test_cache_should_be_invalidated_by_update_post_meta() { 131 $posts = self::factory()->post->create_many( 2, array( 132 'post_type' => 'page', 133 ) ); 134 135 add_post_meta( $posts[0], 'foo', 'bar' ); 136 add_post_meta( $posts[1], 'foo', 'bar' ); 137 138 $cached = get_pages( array( 139 'meta_key' => 'foo', 140 'meta_value' => 'bar', 141 ) ); 142 143 $cached_ids = wp_list_pluck( $cached, 'ID' ); 144 $this->assertEqualSets( $posts, $cached_ids ); 145 146 update_post_meta( $posts[1], 'foo', 'baz' ); 147 148 $found = get_pages( array( 149 'meta_key' => 'foo', 150 'meta_value' => 'bar', 151 ) ); 152 153 $found_ids = wp_list_pluck( $found, 'ID' ); 154 $this->assertEqualSets( array( $posts[0] ), $found_ids ); 155 } 156 157 /** 158 * @ticket 40669 159 */ 160 public function test_cache_should_be_invalidated_by_delete_post_meta() { 161 $posts = self::factory()->post->create_many( 2, array( 162 'post_type' => 'page', 163 ) ); 164 165 add_post_meta( $posts[0], 'foo', 'bar' ); 166 add_post_meta( $posts[1], 'foo', 'bar' ); 167 168 $cached = get_pages( array( 169 'meta_key' => 'foo', 170 'meta_value' => 'bar', 171 ) ); 172 173 $cached_ids = wp_list_pluck( $cached, 'ID' ); 174 $this->assertEqualSets( $posts, $cached_ids ); 175 176 delete_post_meta( $posts[1], 'foo' ); 177 178 $found = get_pages( array( 179 'meta_key' => 'foo', 180 'meta_value' => 'bar', 181 ) ); 182 183 $found_ids = wp_list_pluck( $found, 'ID' ); 184 $this->assertEqualSets( array( $posts[0] ), $found_ids ); 185 } 186 187 /** 188 * @ticket 40669 189 */ 190 public function test_cache_should_be_invalidated_by_delete_post_meta_by_key() { 191 $posts = self::factory()->post->create_many( 2, array( 192 'post_type' => 'page', 193 ) ); 194 195 add_post_meta( $posts[0], 'foo', 'bar' ); 196 add_post_meta( $posts[1], 'foo', 'bar' ); 197 198 $cached = get_pages( array( 199 'meta_key' => 'foo', 200 'meta_value' => 'bar', 201 ) ); 202 203 $cached_ids = wp_list_pluck( $cached, 'ID' ); 204 $this->assertEqualSets( $posts, $cached_ids ); 205 206 delete_post_meta_by_key( 'foo' ); 207 208 $found = get_pages( array( 209 'meta_key' => 'foo', 210 'meta_value' => 'bar', 211 ) ); 212 213 $found_ids = wp_list_pluck( $found, 'ID' ); 214 $this->assertEqualSets( array(), $found_ids ); 215 } 216 217 /** 99 218 * @ticket 20376 100 219 */
Note: See TracChangeset
for help on using the changeset viewer.