8

In Sitecore 7.5, it keeps the Item name same across all the language versions

So it is like

For the English language: http://example.com/products/accessories

For German language: http://example.com/de-de/products/accessories

Is possible out-of-the-box or by some customization in Sitecore to be able to create different URL per language for the same item as below?

Required for German language: http://example.com/de-de/produkte/zubehoer

The site is sharing the same content tree across all languages, so having different content tree per language is not a good option here for me. Also, don't want to use Sitecore Alias due to large number of pages we have in the site.

2 Answers 2

15

You can configure the LinkManager to use Display Name instead of item title when generating URLs.

<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/">
  <sitecore>
    <linkManager>
      <providers>
        <add name="sitecore">
          <patch:attribute name="useDisplayName">true</patch:attribute>
        </add>
      </providers>
    </linkManager>
  </sitecore>
</configuration>

The items will still resolve using the title though, so you would probably want to implement redirects to the localized url or use canonical URLs.

0

You can create a separate field to store the localizable name and then override GetItemPathElement in LinkBuilder class to use the new field.

As a bonus you can add option to control use of this field through the configuration (in a similar way @Kasper Gadensgaard suggested to choose using display name).

2
  • GetItemPathElement is in LinkBuilder not in LinkProvider
    – Harsh Baid
    Oct 17, 2016 at 10:09
  • @HarshBaid you're right, thanks for pointing this out. This class is in the same file as LinkProvider Oct 17, 2016 at 10:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.