Программное изменение стилей изображения во views

При выводе вьюсом полей изображений в настройках поля можно установить стиль изображения, который будет применяться к этому полю при выводе. Но если есть необходимость выводить множественное поле с разными стилями (к примеру первое изображение выводить со стилем "big", а последующие - со стилем "small"), то придется стили менять программно. Для этого нужно воспользоваться hook_views_pre_render(), который вызывается когда результаты представления уже готовы , но еще не отрендерились.


/**
 * Implements hook_views_pre_render()
 */
function MYMODULE_views_pre_render(&$view) {
  if ($view->name == 'test' && $view->current_display == 'page') {
    foreach ($view->result as $result) {
      foreach ($result->field_field_image as $key => &$field_image) {
        if ($key == 0) {
          $field_image['rendered']['#image_style'] = 'big';
        }
        else {
          $field_image['rendered']['#image_style'] = 'small';
        }
      }
    }
  }
}