Author:
Source
Embedding image within pages of content helps both within the design of the page and when shared on social media. If you set up meta tags to point at a particular image then that image will appear when the page is shared on social media. This makes your page stand out more.
A while ago I added a header image to the articles in the form of a field that references a media item, which is quite typical when adding images to pages. To add an header image to an article I just had to upload an image and Drupal would handle the size, placement and meta data for that image.
With the field in place, however, I spent a while adding a default header image to new articles so I haven’t been making good use of it. My GIMP skills aren’t that amazing and so the prospect writing an article and spending time fiddling with text elements on an image every week wasn’t that appealing.
I decided that rather than spend time hand crafting an image for the header, I would automate the process as much as possible. To this end I set about writing the components that would allow me to automatically inject a generated header image using Drupal services. I thought that the setup of this functionality would make a good article itself.
In this article I will briefly touch upon creating images using PHP and how to inject those images into a media reference field on a node using a form in a local task.
Creating An Image Using PHP
This is a big topic so I’m not going to cover everything here, but I thought an introduction into how I created the header image might be of interest to readers. I’ll be using the PHP GD library functions here as they are pretty easy to use and are normally installed on most PHP platforms.