The executeResize hook is triggered on whenever Contao resizes an image. It passes the image object as an argument and expects either null or a the path to the resized image as the return value. If the return value is null, other hooks of the same type will still be executed.

Using the executeResize and getImage hooks has been deprecated and will no longer work in Contao 5.0. Replace the contao.image.resizer service instead.


  1. \Contao\Image $image

    The legacy image object instance.

Return Values

The path to the process image or null to keep the default behaviour.


// src/EventListener/ExecuteResizeListener.php
namespace App\EventListener;

use Contao\CoreBundle\ServiceAnnotation\Hook;
use Contao\Image;
use Terminal42\ServiceAnnotationBundle\ServiceAnnotationInterface;

class ExecuteResizeListener implements ServiceAnnotationInterface
     * @Hook("executeResize")
    public function onExecuteResize(Image $image): ?string
        if (…) {
            // Do something and return the path to the resized image

            return $pathToResizedImage;

        return null;