Multiple Language Support in StoryBuilder
You and your constituents can create StoryBuilder articles in any locale activated for your site. In general, a site with Convio Multiple Language Support has two locales activated.
In this section:
To provide locale-specific translations of a given StoryBuilder article, you create a separate article for each locale (by assigning a locale to each article) and then insert the content. When constituents create a StoryBuilder article, the article is automatically assigned their preferred locale or the site default locale.
How StoryBuilder articles display to site visitors depends in part on certain Multiple Language Support settings. For example, your site may be configured so that the results of an article search include only articles that match a visitor's preferred locale. And in the StoryBuilder Headline component in PageBuilder you specify whether to display all StoryBuilder articles to site visitors regardless of locale, or only those that match a visitor's preferred locale.
Example: James, an online communications specialist with the American Health Society (AHS), wants to post news articles in the United States and Canada. He creates several StoryBuilder articles in the English-U.S. locale and several in the French-Canada locale.
A few days later...
Claire, an English-speaking constituent in the United States, goes to the news section of the AHS site. She finds a list of articles that are all in English. Claire is only able to search for and view articles in English.
A few weeks later…
Samuel, a French-speaking constituent in Canada, goes to the news section of the AHS site. He clicks the French-Canada link in the sidebar to make it his preferred locale. As Samuel navigates the news section (as well as the rest of the site), only articles in French display. Samuel clicks on a single article, then uses the search function and clicks on Aller (the French translation of Go). Again, the search results only include articles in French.
Creating a StoryBuilder Article for Each Locale
When you create a new StoryBuilder article, you can assign it a Locale -- either All Locales (the default) or a single specified locale. To provide articles for specific locales with their associated languages, you create a separate article for each locale and customize the content as necessary.
An article and its locale-specific translations can share the same title; that is, you can keep the title of the original untranslated article. Each article is uniquely identified by its assigned locale.
The StoryBuilder article list is translated by Convio.
Note: The locale of any StoryBuilder articles created prior to Multiple Language Support is initially set to All Locales, so that those articles display to all site visitors. You can always edit the locale of a preexisting article and do the following:
- Assign a different locale to the article, customizing its content as needed,
- Create a copy of each original article and assign the new copy a different locale, customizing its content as needed.
To create a StoryBuilder article for each locale:
- Create a StoryBuilder article. This will be your base or original article.
- Copy the original article, keeping the same Headline. (A group of articles with different locales can share the same Headline. Each article is uniquely identified and used on the site according to its assigned locale.)
- On the Article Editor tab of the new duplicate article, select a different locale in the Locale drop-down menu. A new article is set by default to the site default locale. The menu includes all locales enabled for your site; most sites are enabled for two locales. (You can also specify All Locales for an article.)
- Continue with the standard steps for creating a StoryBuilder article, such as entering Keywords, selecting security categories, and so on.
- Save your edits.
- Add appropriate translated or localized content to the article. (Your organization may have the translations done by an outside vendor, which you then add to the article.)
- Repeat the above steps as needed, creating a separate copy of the original article for each locale.
Configuring the StoryBuilder Article Search by Locale
How does a site visitor search multilingual content? Do they need to be in the locale of the search terms to find results?
In general, a site visitor or logged-in constituent who selects a preferred locale willl only be shown articles with that assigned locale.
NEWS2_ARTICLE_SEARCH_LIMIT_TO_LOCALE - A TRUE value indicates that when searching for articles, the search results will be limited to the user's currently enabled locale, including articles where the locale is not specified. When set to TRUE, this SDP enables locale as a search criteria in Article Search: a new Language section appears below the Category criteria with checkboxes for each locale enabled on the site. Users will be able to search on articles categorized with each of the selected locales in search. By default, this extra search criteria field will check for the locale of the end user. Provide locale-aware story search. Update article search to search articles in the end user's current locale (E.g. if the user's current session is set to en_US as the selected locale, the search will find only articles with en_US specified as their locale.)
It is possible not to filter by locale when a site visitor searches for an article. The site’s NEWS2_ARTICLE_SEARCH_LIMIT_TO_LOCALE SDP must be set to FALSE (the default). A FALSE value indicates that the search will return articles in all locales.
The locale of preexisting articles (created before the MLS release) is set to All Locales so that they display to all users regardless of the user's locale. You can always edit the locale of any new or existing article.
You can toggle how Multiple Language Support works with search results, configuring a search to include articles in a specific locale or across all locales:
- Results are limited to the user’s currently enabled locale, including articles where the locale isn’t specified
- Results include articles in all locales
Using the StoryBuilder RSS Link Component
- Providing RSS Feeds: Adding an RSS Component to a Web Page
RSS Feeds must be enabled for StoryBuilder.
Locale Specific RSS Feeds of Articles - The StoryBuilder RSS Link Component now provides the ability to specify a locale/specify whether a feed should be filtered by a user’s locale. Enabling this option filters the articles in an RSS Feed of StoryBuilder articles by the end user’s locale.
- Before testing, create user stories in different locales.
- You can add an RSS feed to the site by adding an RSS Link component on the homepage.
- Add RSS links of each embedded type and also a link only. Try adding each without choosing the option to only show stories in the user's locale. Verify that when you do that, the embedded link has useLocale set to FALSE. View the homepage and change between the locales. Verify that no matter what locale you are in, you always see all stories (regardless of locale) when you view the feed. (View the feed by either clicking on the link or by adding the feed to an RSS Aggregator such as SharpReader.)
- Repeat the above, but choose the option to only show stories in the user's locale when you add each link. Verify that when each is added, the embedded link has useLocale set to TRUE. View the homepage and change between the locales. Verify that only the stories that are in the current locale show up in the RSS feed.
Understanding User-Created Stories in Multiple Locales
In order to create a story, site visitors must log in or register as constituents. The StoryBuilder user interface (such as field labels and error messages) displays in their preferred locale. When they create and submit a new StoryBuilder article, it is automatically saved in their current preferred locale -- or in the site default locale if a preferred locale is not specified. (Constituents cannot assign a locale themselves.)
- In order to allow users to enter stories, create some Interests, and then add User Story links to those interests on the homepage.
- For users who are not logged in, when the user clicks on the interest link, they should see a registration page. Test that the registration page is displayed in the user's locale. Register a new user. Check the user's selected locale in C360 and verify that the locale is set to the locale that the user was in when he/she registered.
Story Display on User Side
- Add user stories to the homepage either by using the StoryBuilder Headline component in PageBuilder (displaying the entire article), or by adding a StoryBuilder article link to specific stories.
- On the homepage, view these stories. Switch between locales and verify that the date and author fields are translated correctly for that locale. Verify that the dates are formatted correctly for the specific locale (i.e. day month year for all locales other than en_US).