Working with Files and Images
In this chapter, we will look at how we can work with files and images in Drupal, supported by the core features. Although the Media module allows developers to provide new source plugins to expose media entities to all sorts of types of media, we won’t be going into this quite an advanced topic. Instead, we’ll focus on lower-level tools that can be used for working with files. And we will see some examples along the way. So, what are we going to discuss?
First, we are going to get an understanding of the Drupal filesystems. Related to this, we’re going to talk about stream wrappers and how Drupal handles native PHP file operations. We will even create our own custom stream wrapper a bit later in the chapter.
Then, we will talk a bit about the different ways to handle files in Drupal, namely, managed (tracked) and unmanaged files. While working with managed files, we will add an image field to our Product entity type and have...