Ticket #33878: 33878_33070.1.diff
File 33878_33070.1.diff, 4.8 KB (added by , 10 years ago) |
---|
-
src/wp-includes/media.php
793 793 } 794 794 795 795 /** 796 * Get the URL of an image attachment. 797 * 798 * @since 4.4.0 799 * 800 * @param int $attachment_id Image attachment ID. 801 * @param string|array $size Optional. Registered image size to retrieve the source for or a flat 802 * array of height and width dimensions. Default 'thumbnail'. 803 * @param bool $icon Optional. Whether the image should be treated as an icon. Default false. 804 * @return string|false Attachment URL or false if no image is available. 805 */ 806 function wp_get_attachment_image_url( $attachment_id, $size = 'thumbnail', $icon = false ) { 807 $image = wp_get_attachment_image_src( $attachment_id, $size, $icon ); 808 return isset( $image['0'] ) ? $image['0'] : false; 809 } 810 811 /** 796 812 * Adds a 'wp-post-image' class to post thumbnails. Internal use only. 797 813 * 798 814 * Uses the 'begin_fetch_post_thumbnail_html' and 'end_fetch_post_thumbnail_html' action hooks to -
src/wp-includes/post-thumbnail-template.php
170 170 */ 171 171 return apply_filters( 'post_thumbnail_html', $html, $post->ID, $post_thumbnail_id, $size, $attr ); 172 172 } 173 174 /** 175 * Return the post thumbnail URL. 176 * 177 * @since 4.4.0 178 * 179 * @param int|WP_Post $post Optional. Post ID or WP_Post object. Default is global `$post`. 180 * @param string|array $size Optional. Registered image size to retrieve the source for or a flat 181 * array of height and width dimensions. Default 'post-thumbnail'. 182 * @return string Post thumbnail URL or empty string. 183 */ 184 function get_the_post_thumbnail_url( $post = null, $size = 'post-thumbnail' ) { 185 $image = wp_get_attachment_image_url( get_post_thumbnail_id( $post ), $size ); 186 return isset( $image ) ? $image : ''; 187 } 188 189 /** 190 * Display the post thumbnail URL. 191 * 192 * @since 4.4.0 193 * 194 * @param string|array $size Optional. Registered image size to retrieve the source for or a flat 195 * array of height and width dimensions. Default 'post-thumbnail'. 196 */ 197 function the_post_thumbnail_url( $size = 'post-thumbnail' ) { 198 echo get_the_post_thumbnail_url( null, $size ); 199 } -
tests/phpunit/tests/media.php
718 718 719 719 remove_filter( 'embed_maybe_make_link', array( $this, 'filter_wp_embed_shortcode_custom' ), 10 ); 720 720 } 721 722 /** 723 * @ticket 33878 724 */ 725 function test_wp_get_attachment_image_url() { 726 $this->assertFalse( wp_get_attachment_image_url( 0 ) ); 727 728 $post_id = $this->factory->post->create(); 729 $attachment_id = $this->factory->attachment->create_object( $this->img_name, $post_id, array( 730 'post_mime_type' => 'image/jpeg', 731 'post_type' => 'attachment', 732 ) ); 733 734 $image = wp_get_attachment_image_src( $attachment_id, 'thumbnail', false ); 735 736 $this->assertEquals( $image[0], wp_get_attachment_image_url( $attachment_id ) ); 737 } 721 738 } -
tests/phpunit/tests/post/thumbnails.php
110 110 111 111 $this->assertEquals( $expected, $actual ); 112 112 } 113 114 /** 115 * @ticket 33070 116 */ 117 function test_get_the_post_thumbnail_url() { 118 $this->assertEquals( '', get_the_post_thumbnail_url() ); 119 $this->assertEquals( '', get_the_post_thumbnail_url( $this->post ) ); 120 121 set_post_thumbnail( $this->post, $this->attachment_id ); 122 123 var_dump( get_the_post_thumbnail_url( $this->post ) ); 124 125 $this->assertEquals( '', get_the_post_thumbnail_url() ); 126 $this->assertEquals( wp_get_attachment_url( $this->attachment_id ), get_the_post_thumbnail_url( $this->post ) ); 127 128 $GLOBALS['post'] = $this->post; 129 130 $this->assertEquals( wp_get_attachment_url( $this->attachment_id ), get_the_post_thumbnail_url() ); 131 } 132 133 /** 134 * @ticket 33070 135 */ 136 function test_the_post_thumbnail_url() { 137 $GLOBALS['post'] = $this->post; 138 139 ob_start(); 140 the_post_thumbnail_url(); 141 $actual = ob_get_clean(); 142 143 $this->assertEmpty( $actual ); 144 145 ob_start(); 146 the_post_thumbnail_url(); 147 $actual = ob_get_clean(); 148 149 $this->assertEmpty( $actual ); 150 151 set_post_thumbnail( $this->post, $this->attachment_id ); 152 153 ob_start(); 154 the_post_thumbnail_url(); 155 $actual = ob_get_clean(); 156 157 $this->assertEquals( wp_get_attachment_url( $this->attachment_id ), $actual ); 158 } 113 159 }