The new feature for varying the culture for document types is great! Would it be possible to add this feature for media types?
My use case:
We added a text box to the image document type for the copyright. The thing is that the copyright can vary from one language to another.
Hi,
We have the same requirement as we need to have different cultures for the medias.
It would be great if you can add this in a future release.
Thanks
Hi! We understand the feature request and have the same wish. This is a longer-term project which we can't work on immediately.
I've put this on the "idea" list for inspiration when we pick up work on the media library in the future.
I'd like to add that this would be very useful for adding variant descriptions to be used as alt attributes for images for accessibility purposes
We've used Vorto properties on media in V7 to add alternate texts, so not having culture variant media types and no other alternative (Vorto isn't compatible with V8 and probably won't ever) is a major issue 馃槩
Adding the alternate texts within the content as additional property isn't always possible (e.g. when picking multiple images or a folder), makes editing unintuative (no image, but filled text; changing the image doesn't update/reset the text, etc.) and would also mean the text needs to be entered every time it's picked.
I would seriously consider adding this feature to the next minor (8.2.0), most infrastructure already seems in place...
As a temporary workaround, I'm now just adding a property per culture to the media type, e.g. alternateText_nl and alternateText_fr (same format as Examine adds culture variant fields to the index). To make accessing the specific values a little easier (and hide this workaround to the front-end), the following custom Models Builder class/extension method can be added:
```c#
using Umbraco.Core.Composing;
using Umbraco.ModelsBuilder;
using Umbraco.Web;
[IgnorePropertyType("alternateText_nl")]
[IgnorePropertyType("alternateText_fr")]
public partial class Image
{
public string AlternateText => this.AlternateText();
}
public static partial class ImageExtensions
{
public static string AlternateText(this Image image, string culture = null)
{
var alias = "alternateText";
if (culture == null)
{
culture = Current.VariationContextAccessor?.VariationContext?.Culture;
}
if (culture != null)
{
alias += "_" + culture;
}
return image.Value<string>(alias);
}
}
```
Need this feature for the same reason (Alternate text in multiple languages).
Ronalds workaround works for 2 or 3 languages, but we're supporting 15 and it gets ugly in the backend :-)
I'd also like to add a +1 for having the alternative text field on the image media type to be added by default.
+1 from me for this. We currently either use nested content (with all its drawbacks like having to select images one by one and having to do that for each language) or a variation of @ronaldbarendse 's solution above.
I wanted to add to this use case as well, in the context of media I guess that most of the time it's something like alt-text that is different depending on culture - would probably not make sense to have the umbracoFile vary by culture =D
In this case maybe the UI could be different? Then the design from Vorto would make a lot of sense ie for editing a alt-text.

Is this feature actively considered for the backlog?
Most helpful comment
As a temporary workaround, I'm now just adding a property per culture to the media type, e.g.
alternateText_nlandalternateText_fr(same format as Examine adds culture variant fields to the index). To make accessing the specific values a little easier (and hide this workaround to the front-end), the following custom Models Builder class/extension method can be added:```c#
using Umbraco.Core.Composing;
using Umbraco.ModelsBuilder;
using Umbraco.Web;
[IgnorePropertyType("alternateText_nl")]
[IgnorePropertyType("alternateText_fr")]
public partial class Image
{
public string AlternateText => this.AlternateText();
}
public static partial class ImageExtensions
{
public static string AlternateText(this Image image, string culture = null)
{
var alias = "alternateText";
if (culture == null)
{
culture = Current.VariationContextAccessor?.VariationContext?.Culture;
}
if (culture != null)
{
alias += "_" + culture;
}
}
```