Module structure

MediaItem

  • Possible types: image, file, movie or audio.
  • Source: The source files will be saved on the server. Note: big images will automatically be downscaled to 3000px width when being uploaded. We do this to prevent memory crashes.
  • Thumbnails: We use the popular LiipImagineBundle to generate thumbnails in front- and backend.
  • Movies: We have a special UI for youtube and vimeo movies, which only requires the movie ID.

MediaFolder

MediaFolder <---> contains multiple MediaItem entities

This is purely for your own internal usage in the backend. View MediaFolder entity.

MediaGroup

MediaGroup <---> contains multiple MediaItem entities using MediaGroupMediaItem.

Any custom module entity can have one or more MediaGroup entities. View MediaGroup entity.

Example

class BlogArticle
{
    /**
     * @var MediaGroup
     */
    private $images;

    /**
     * @var MediaGroup
     */
    private $trailers;
}

Read more about integrating it in your custom module.