Pokud pravidelně používáte Sitecore Content Editor, možná Vám přijde vhod následující rada, jak si seřadit jazyky v dropdown menu v Content Editoru, aniž byste museli cokoli programovat.

Nejprve Vás musím upozornit (zklamat), že tato možnost se poprvé objevila ve verzi Sitecore Experience Platform 8.1 rev. 160302 (8.1 Update-2). Pokud tedy používáte starší verzi, nebudete moci tento postup aplikovat. Pro Vás, co používají starší verzi sice existuje možnost, jak si jazyky v Content Editoru seřadit podle sebe, ale neobejde se to bez programování. Můžete např. použít následující odkaz, ale o tom náš článek není. Tento článek popisuje, jak si uživatelsky seřadit jazyky bez programování, pusťme se tedy do toho.

Výchozí stav

Pokud si otevřete Content Editor, tak na každé item budete mít v pravé rohu dropdown menu pro výběr jazykové verze zvolené item. V default stavu jsou jazyky v tomto menu seřazeny tak, jak byly vytvořeny v sekci System/Languages (viz. Obrázek1) což je opravu nepraktické a při pravidelném používání Content Editoru značně zdržující.

languagesort1

Obrázek1

Úprava řazení

Mnohem praktičtější by bylo, kdyby jazyky v dropdown menu byly seřazeny tak, jak jsou seřazeny v sekci System/Languages. Zde bychom si jazyky seřadili dle svého (nejspíše dle toho, které používáme v daném projektu nejčastěji) a toto řazení by se samo aplikovalo na dropdown menu.

Jak již bylo řečeno na začátku, tak Sitecore tuto možnost od verze 8.1 rev. 160302 (8.1 Update-2) nabízí a to v konfiguračním souboru App_Config/Sitecore.config, pomocí nastavení ContentEditor.SortLanguages. V default stavu je ovšem hodnota nastavena na false, musíme ji tedy změnit na true.

<!-- CONTENT EDITOR SORT LANGUAGES Indicates whether the Content Editor show languages in the language selection dropdown in the same order as /sitecore/system/Languages child items. Default value: false -->
<setting name="ContentEditor.SortLanguages" value="true" />

Pokud změnu provedeme a vrátíme se do Content Editoru, budou již jazyky řazeny tak, jak jsou seřazeny v sekci System/Languages (viz. Obrázek2).

languagesort3

Obrázek2

Pokud byste si chtěli více upravit dropdown menu s jazyky v Content Editoru, otevřete si soubor \sitecore\shell\Applications\Content Manager\Galleries\Languages\Gallery Languages.xml, vyměňte metodu GalleryLanguagesForm z (Sitecore.Client.dll) za Vaši vlastní třídu a pomocí CodeBeside si můžete napsat vlastní kód, možnosti jsou neomezené 🙂

Doporučení na závěr

Protože jsme profesionálové, malá rada na závěr. Jakožto profesionálové, nebudeme upravovat přímo konfigurační soubor App_Config/Sitecore.config, ale vytvoříme si vlastní, např. zde App_Config/Include/Z.Sitecore.Configuration.config a v něm provedeme tzv. patch pro toto nastavení. Výsledný soubor Z.Sitecore.Configuration.config by pak mohl vypadat třeba následovně.

<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/">
  <sitecore>
    <settings>
      <!-- CONTENT EDITOR SORT LANGUAGES Indicates whether the Content Editor show languages in the language selection dropdown in the same order as /sitecore/system/Languages child items. Default value: false Patch value: true -->
      <setting name="ContentEditor.SortLanguages" >
        <patch:attribute name="value" value="true" />
      </setting>
    </settings>
  </sitecore>
</configuration>

Pokud byste si chtěli přečíst více o tom, jak správně upravovat konfigurační soubory, doporučuji následující článek.