Title and Alt fields are great, but most of my clients really need a proper Caption field where they can use input formatting etc.

I realize I could add a multi-line text field (a.k.a. textarea) and use wieghts and fieldset groups to make them look like they belong together, but this is a lot of work, and unfortunately, as far as I can tell, that would preclude the ability to use the multi-field functionality to add several images.

Does anybody else need an additional caption field? Is there another way to achieve this that I'm not thinking of?

Comments

dopry’s picture

Version: 5.x-1.x-dev » 6.x-3.x-dev

Lets make this a 2.1 feature.

moshe weitzman’s picture

I use title field for this, and I thin it is a proper use of title since we have ALT for screenreaders and other situations where the image is not visible. The theme is then responsible for emitting the title, which isn't ideal but oh well.

jpsalter’s picture

I too have kludged the title field and the alt field into other uses via the theme layer.

But, it is an ungraceful hack, one that does not help the end user, and ignores the fact there exists patches to add the needed feature.

As Moshe has kindly pointed out in http://drupal.org/node/164283 - this request has had two separate patches written and additional feature requests.

It seems reasonable to me to have credit and caption fields (aka title and body). Especially since others have gone to the trouble of coding this feature twice.

I have used the patched imagefield.module on three production sites already -- since it was exactly the solution needed. Other Drupal developers are doing the same -- let's get this feature added soon.

dopry’s picture

Status: Active » Closed (won't fix)

I think in retrospect I won't be adding this... I think you should use title, or a content type with caption fields. I really want to keep imagefield simple as possible,. It's complicated enough as it is.

jumpfightgo@groups.drupal.org’s picture

For most use cases a plain-text caption is enough, so why can't we just handle captions just like alt and title and description? If someone wants to allow input formats for the caption then they can create a content type for that, but for the rest of us all we need is one more field in the hash.

Honestly, if you want to upload a photo there's a pretty darn good chance that you'll want to add a caption, so this really is a big deal, and there's no alternative if you use imagefield as a multi-value field.

scottrigby’s picture

+1 for reconsidering a plain text caption. The multi-value use case is a pretty good argument.

nisaak’s picture

I agree, this would be a tremendously useful feature to have. I have a number of sites right now that could use this functionality. The ability to be able to accept html for links, bold, italics, etc is key. Thanks.

glennr’s picture

Ditto #6: A plain text caption field (and possibly a credit field) would be great.

pribeh’s picture

My clients really need a caption field for linking to (CC) content they are uploading. They post a lot of creative commons licensed photos that could use a link to actual (CC) license page. I would be happy with a creative commons link feature but I think a more general purpose input filter option would benefit more people using this module. Perhaps make it a submodule?

Sunshiney’s picture

While I see this is a "no fix," I want to add my voice to those wanting this feature. Surely there is a way to a win-win on this, one where the maintainer would go "oh...ah..ok" and the rest of us would be, well, ditto?

-Anti-’s picture

I just spent two hours struggling with the captioning hacks:
http://drupal.org/node/324591
http://drupal.org/node/432846

I just cannot get them to work - very, very frustrating.
I would LOVE this built into either imagefield or core.

asb’s picture

I also second this feature request.

Every image has a creator that needs to be credited, every copyrighted image needs copyright metadata, every copyleft image need the proper licensing/attribuition information.

This is not optional but simply essential to support the legal use of images. And Drupal itself claims a trademark, right?

justinlevi’s picture

A Credit and Caption solution that is forward compatible needs to be developed for D6. Crazy that all we have is imagefield extended which doesn't seem like it will be D7 compatible and multigroup which also seems shady.

porg’s picture

Encouraging maintainers to follow up!

1) I agree with #9 and #12 that proper captions, including crediting, is an absolute necessity for working with images!!!

2) And I agree with #7 and #9 about the technical implementation, that this caption input needs to support at least the basic HTML element <a> in order to link to the original-files, authors, licenses, etc and at best also some semantic HTML elements as <strong>,<em>,etc. The graphical styling as #7 mentioned ("italic, bold, large, small, etc"), shall then be achieved by CSS-selection. Therefore this caption functionality shall render its own CSS-class, then you can select i.e. .captionclass strong and style it as you like.

Research for Workarounds / Alternatives

Image Caption clientside uses JQuery to dynamically add captions to images from their title attribute if their CSS class is "caption", and also includes the serverside "Image Caption Filter". Nevertheless it has some bugs: #692374: Filter doesn't work on images with multiple classes and an attempt to improve #777364: Major update for filter. And as it uses the "title" attribute, it can only be plain text, not use any links.

Caption Filter provides a simple input filter [caption]<img src="" alt="" />Your caption[/caption] which then renders the caption. But by its design, it can only be used on inline pictures.

Solutions via template logic: [#432846] and Ability to add caption

Conclusion

None of these offers a solution for captions which:
1) Work with CCK image fields (as opposed to inline images)
2) Can contain the most basic HTML element <a> and maybe some semantical elements like <strong>,<em>,etc
3) Can be achieved by average users (without advanced programming skills).

Please find a proper caption solution within ImageField!