Make WordPress Core


Ignore:
Timestamp:
10/06/2015 04:58:21 AM (9 years ago)
Author:
wonderboymusic
Message:

Merge the Responsive Images feature plugin into core, initial commit. See: https://github.com/ResponsiveImagesCG/wp-tevko-responsive-images/

New functions in media.php:

  • wp_get_attachment_image_srcset_array() - Returns an array of image candidate string data used to build a srcset value for an attachment given an $attachement_id and $size.
  • wp_get_attachment_image_srcset() - Returns the srcset value for an attachment given an $attachement_id and $size.
  • wp_get_attachment_image_sizes() - Returns the sizes value for an attachment given an $attachement_id and $size and optional arguments used to alter its output.
  • wp_make_content_images_responsive() - A display filter for adding srcset and sizes to images embedded in content.
  • wp_img_add_srcset_and_sizes() - A utility function used by wp_make_content_images_responsive() to add srcset and sizes to a single <img> element.

Modifies existing core functions:

  • Modify wp_get_attachment_image() so the HTML returned for an image includes srcset and sizes.
  • Modify get_media_embedded_in_content() (sup, 3.6 leftover) by adding <img> to the list of accepted tags that can be matched in content. This is used in wp_make_content_images_responsive() to find all of the images embedded in content before passing them off to wp_img_add_srcset_and_sizes().

Tests:

  • Add a new factory method to WP_UnitTest_Factory_For_Attachment named create_upload_object()
  • Adds unit tests
  • Updates unit tests

Props joemcgill, tevko, jaspermdegroot, mdmcginn, barryceelen, peterwilsoncc, fsylum, wonderboymusic, chriscoyier, benjaminpick, jrfnl, #12kingkool68, janhenckens, ryanmarkel, side777, ryelle, wturrell, micahmills, mattbagwell, coliff, DrewAPicture.
See #33641.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/tests/phpunit/tests/xmlrpc/mw/getRecentPosts.php

    r25002 r34855  
    4040        $this->assertEquals( 401, $result->code );
    4141    }
    42    
     42
    4343    function test_no_editable_posts() {
    4444        wp_delete_post( $this->post_id );
     
    101101        // create attachment
    102102        $filename = ( DIR_TESTDATA.'/images/a2-small.jpg' );
    103         $contents = file_get_contents( $filename );
    104         $upload = wp_upload_bits( $filename, null, $contents );
    105         $this->assertTrue( empty( $upload['error'] ) );
    106 
    107         $attachment = array(
    108             'post_title' => 'Post Thumbnail',
    109             'post_type' => 'attachment',
    110             'post_mime_type' => 'image/jpeg',
    111             'guid' => $upload['url']
    112         );
    113         $attachment_id = wp_insert_attachment( $attachment, $upload['file'], $this->post_id );
     103        $attachment_id = $this->factory->attachment->create_upload_object( $filename, $this->post_id );
    114104        set_post_thumbnail( $this->post_id, $attachment_id );
    115105
Note: See TracChangeset for help on using the changeset viewer.