The Appliance itself is very limited in what it's able to return on a keymatch: a title field and a URL field.
What is very common practice is for the title field to be overloaded with pipe-delimited information. In this way, it's possible to theme in something richer than just title text and a link.
KeyMatch Title|link_to_image.jpg|Short bit of description
There are some limitations: the GSA Admin configuration page is limited to 100 characters in the title field, and the maximum size of the field in general is something like 256-512 characters (which can be achieved by circumventing the first limitation by adding keymatches via a spreadsheet).
Rather than supporting a number of fields with pipe delimited information, it might be better to implement a special content type that contains an arbitrary collection of fields. Then, the title entered into the GSA configuration for keymatches would be something like...
KeyMatch Title|nid
Where 'nid' is the Node ID of the corresponding keymatch content. We'd load the node based on the nid that's passed through (or just default to current behavior if no nid is found in the title string), and then pass the node object to a theme function or template where the fields can be themed into something appropriate.
Don't know if this is appropriate for the core Google Appliance module or better off as its own thing.
Comments
Comment #1
iamEAP commentedSorry, KeyMatches are already supported. Edited the ticket and title to reflect something related but better.
Comment #2
mpgeek commentedComment #3
iamEAP commentedReopening with an even clearer title.
To reiterate:
The second item may be a bit lofty, but at the very least, I think keymatches ought to be themable.
Comment #4
mpgeek commentedJust wanted to point out that we do have a keymatch template (/theme/google-appliance-keymatch.tpl.php), so you can theme that easily. Also, the pipe delimited data in the "rich" keymatch, to me, seems specific to your use case, and perhaps you override template_preprocess_google_appliance_keymatch. Is there an argument for supporting this out of the box with the module?
Comment #5
iamEAP commentedStarted digging into this (and a bundle of other 6->7 update issues) and I think you're right. I should have taken a closer look earlier. Marking as closed, works as deisgned. Thanks, mpgeek!
Comment #5.0
iamEAP commentedTurns out KeyMatches is already a supported feature. Proposing adding "rich" KeyMatches instead.