# Contentful Internationalization

Contentful makes it very easy for setting up locales for your content for enabling internationalization of your content. Nacelle is built to handle localization so that you can create e-commerce experiences in any language.

# Setting up locales in Contentful

Contentful has guides (opens new window) for setting up locales in their docs (opens new window). To add a new locale go to your Contentful dashboard and select "Locales" under "Settings" in the main navigation menu. From here you can add a new locale.


Fallback locale must NOT be set to "None". Locales without a fallback locale set will throw an error when indexing.

Be sure to check the box for "Enable this locale in response". This will allow Nacelle to index your locale content.

After you have created a new locale you can follow Contentful's guides for enabling localizations for different content model fields. For example you might want your blog articles to have their "Title" and "Content" fields to have localizations enabled. You would have to go to those fields' settings within the "Article" content model and check the box to enable localization.

# Using Locale data in Nacelle

First sync updated locale data to Nacelle by re-indexing your content from your space's dashboard. After indexing you can review the new content from the "Indices" tab and selecting "Content". There you should see the newly index content. Notice that handles for each content item have the format of <handle>::<locale code>, such as this-is-a-blog-post::en-US or this-is-a-blog-post::es.

# In Nuxt

In your Nuxt project you will now be able to import locale content using $nacelle, by passing the locale as a parameter:

const articleWithArgentinianTranslation = this.$nacelle.data.article({
  handle: 'my-blog-post',
  locale: 'es-AR',

const heroBannerWithPolishTranslation = this.$nacelle.data.content({
  handle: 'my-hero-banner',
  type: 'heroBanner',
  locale: 'pl-PL',