Существует несколько способов уменьшить закачиваемое изображение.
1. В ExpressionEngine есть возможность создать уменьшенную копию изображения при закачке. Плюс в том, что можно закачивать и уменьшать несколько картинок, а также не требуется создание специального поля для картинки. Минус в том, что приходится это делать одна-за-другой. Также минус в том, что мы получаем одно уменьшенное изображение и, соответственно, один оригинал. То есть мы не может вывести автоматически только уменьшенные изображения.
2. Способ
Используем плагин Extract URL Plus 2 и утилиту phpThumb
Создаем поле для изображения, например screen. В шаблоне, там где хотим вывести уменьшенное изображение, прописываем код
<img src="http://www.mysite.com/phpThumb/phpThumb.php?src={exp:zm_extract_url_plus show="file_path"}{screen}{/exp:zm_extract_url_plus}&h=200" border="0" alt="{title}" />
{ screen} - это поле с нашей одной закаченой картинкой.
http://www.mysite.com/phpThumb/ - путь к утилите phpThumb
h=200 - height=200, то есть по высоте 200, а по ширине сколько получится.
Собственно все.
Плюс: Из одной закаченой картинки можно делать сколько угодно уменьшенных изображений, например на главной странице у нас будут изображение с шириной 100, на странице с новостью - с шириной 200 и т.д.
Минус: Позволяет уменьшить только одну картинку в поле (может я не до конца разобрался, прошу поправить)
3. Используем плагин Image Sizer
Если у нас в поле код, типа
<img src="{filedir_1}add_pic3.gif" style="border: 0;" alt="image" width="473" height="311" />
в принципе, стандартный код. То в шаблоне мы прописываем
{exp:imgsizer:size {screen} width="100"}
<img src="{sized}" width="{width}" height="{height}" />
{/exp:imgsizer:size}
Минусы и плюсы те же, что и у п.2, только здесь используется один плагин, без утилит.