Version: 2.0.0
Released: 3-8-2017


  • Ansel 2.0.0 drops support for ExpressionEngine 2.x. If you need support for ExpressionEngine 2.x, you will need to use Ansel 1.x.

  • Dropped the {img:tag} variable in the tag pair. Use the {img:url} variable to build your own <img> tag.

  • EE directory manipulations are no longer included by default because of the additional query. In order to use them, include the parameter manipulations="true"


  • {img:file_size} is deprecated. Use {img:filesize}

  • {img:modified_date} is deprecated. Use {img:modify_date}


  • Every line of code has been re-written in Ansel 2. While the original code was referenced or copied over, it was all evaluated for effeciency and maintainability.

  • A large majority of the codebase is now covered by PHPUnit testing. For those that are not as technically inclined, this simply means there’s now less of a chance of breaking things when making changes to the codebase.


  • Ansel 2 features a drag and drop uploading interface for fields — images uploaded through this interface that do not meet requirements are rejected and never actually get uploaded to the file manager

  • This drag and drop uploading interface also sports batch uploading

  • Ansel is now 100% mobile friendly

  • Rows and images are now 1 to 1. This creates a simpler user interface. You can no longer delete an image from the row, you can only adjust the crop. If you want a new image, upload or select it to create a new row.

  • More images than the field settings allow can now be uploaded to a field. When you go over the field image limit, the image row will be grayed out to indicate that it will not be displayed

  • Field options now include the ability to require the Title, Caption, or Cover fields

  • Field options now include the ability to customize the label of the Title, Caption and Cover fields

  • Any image tag parameter where it makes sense to do so now feature a not_ prefix counterpart. For instance: not_title="foo|baz"

  • Channel form support

  • ImageMagick is now supported if present on the server

  • jpegoptim, gifsicle, and optipng are now supported and utilized if installed on the server (each can be disabled individually via config file if desired, and there is also a config setting to force the use of GD even when ImageMagick is installed)

  • New tag params:

    • site_id="2"
    • original_location_type="ee|assets"
    • upload_location_type="assets|treasury"
    • filesize="182827"
    • filesize="< 182827"
    • filesize="> 182827"
    • original_filesize="182827"
    • original_filesize="< 182827"
    • original_filesize="> 182827"
    • width="300"
    • width="< 300"
    • width="> 300"
    • height="300"
    • height="< 300"
    • height="> 300"
    • position="2"
    • position="< 2"
    • position="> 2"
    • show_disabled="y" (shows images over limit)
    • order_by="date:desc|order:asc"
    • random="true"
    • manipulations="true" (EE manipulations are no longer included by default as it requires an additional query)
    • host=""


  • I had a long conversation with {img:path} and all related path variables and they will now work all the time

  • Fixed an issue with manipulating an image that could happen if max height was set but not max width