Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to get content from specific culture in Umbraco

I have biligngual website with German language set as default language and I am trying to get English content nodes from my SurfaceController like this:

Umbraco.Content(ID);

And i have tried to change curent culture like this:

Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");
Thread.CurrentThread.CurrentUICulture = new CultureInfo("en-US");

But without success.

like image 915
Josip Pavlović Avatar asked Oct 22 '25 19:10

Josip Pavlović


1 Answers

Found the answer:

private readonly IVariationContextAccessor _variationContextAccessor;

public ContentApiController(IVariationContextAccessor variationContextAccessor)
{
    _variationContextAccessor = variationContextAccessor;
}

public IHttpActionResult Get(int id, string culture)
{
    _variationContextAccessor.VariationContext = new VariationContext(culture);
    var cnt = Umbraco.Content(id);
    return Ok(cnt.Name);
}
like image 64
Josip Pavlović Avatar answered Oct 24 '25 10:10

Josip Pavlović



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!