Make sure the cache key is short enough

The option name can only be 64 characters. Since we're using a
transient, there's an additional 18 characters added to the front
of each option name for the transient timeout. A better way to make sure
the option name is short is to hash the relevant information. This key
will be 32 characters. 32 + 18 for the transient timeout means we'll
have option names of 50 characters which fits in the schema