When I create an item in Sitecore, it will create a version in the selected language. In rocks, I always seem to get a version in the default language (en). Then I have to add a version in the language I want and remove the old language version which gets annoying fast.
So how can I choose the language I want in Sitecore Rocks, just like in the normal Sitecore backend ?
You neeed to switch your language to a specific language an then create your items.
Select the item (right click) -> Tools->Switch Language (it's the last in context menu) -> Select Specific Language.
See attached picture:
Related
Reference to Sitecore's documentations and this related question, the 'Versions' tab in the Ribbon tag supposed to have the option 'Remove' to remove specific language version of the selected item, I have this option for most of the items, but in below scenario, after adding new language version to item, I can't find 'Remove' option:
Create Template 'Sample'-> Create Section 'Data' -> Add Field inside (which is item at the end) -> Add new language version of this field -> Here 'Remove' option will not be exist in 'Versions' tab.
Note: I've just added this version by mistake and just want to Undo it (remove this version).
You cannot remove version of templates, template sections and template fields using Content Editor.
You can use DB Browser application instead. You can open it using /sitecore/admin/dbbrowser.aspx url.
You will see Delete version button there.
I have implemented a tool which is already available from Sitecore Marketplace. The tool allows you to remove the different version on items. For example, if you select an item, it will show all the version the item contains and also possible language version.
Here is the link to the module on marketplace: Sitecore Version Remover
Check if you have the correct rights. It should show remove button like follows:
I have already customize the Page Editor Language Selector by overriding the webedit command, but I can't figure out how to customize the Content Editor Language Selector:
I am trying to replicate the functionality I added for the Page Editor Language Selector, which sorts the languages by region and then language name, and also adjusts the name to not display the ": language (region)" part.
I have already tried overriding the Sitecore.Shell.Applications.Globalization.SelectLanguage.SelectLanguagePage on the SelectLanguage.xaml.xml shell file, but that is for the More Langauges dialog and not for the initial view of the languages. I have also tried overriding the ribbon:languages command, but that is for the click event on each language for actually selecting it.
Any suggestions where else I should look for this functionality?
That menu is generated by \sitecore\shell\Applications\Content Manager\Galleries\Languages\Gallery Languages.xml and the associated CodeBeside in Sitecore.Shell.Applications.ContentManager.Galleries.Languages.GalleryLanguagesForm, Sitecore.Client
The rendering of each option is control by \sitecore\shell\Applications\Content Manager\Galleries\Languages\Gallery Languages.Option.xml although the values are set from the CodeBeside.
BTW, I just used the Chrome Dev Tools to figure out what was going on. From the Network Panel there is an XHTTP call to default.aspx?xmlcontrol=Gallery.Languages. Useful debugging steps.
This is occuring in Sitecore version 6.4.1 (rev. 110720)
Recently, I've had an issue with several users who have unintentionally created a new version of an item - which contains "empty" fields. This is confusing to users because they don't realize that they are seeing a different version of the item, and they think that their content is randomly disappearing.
I don't know how to reproduce this, much less figure out how they are creating these "phantom" item versions.
I am reasonably certain that Sitecore users are not explicitly clicking "add" a new version in the top menu. From what I've been told, all they are doing is "locking" the item for editing, and this seems to create the new version of the item. At this point, it appears that the new version is the "default" that they are seeing, and they are complaining that the content has been "lost."
Is this Sitecore's default behavior - to create a new version of the item when the item is "locked" for editing? Or is this a known issue in this version of Sitecore?
If an item belongs to a workflow then when you hit the "Edit" button it will create a new version automatically for you.
Also, something to look into, in previous versions of Sitecore there were numerous issues where many actions in the content editor created versions of items unexpectedly (sorting for instance). See http://seankearney.com/post/Sitecore-item-and-version-design-flaw.aspx for more information on that.
I'm working in a multi-site, multi-lingual sitecore project, and from time to time, someone adds lots of content on certain sub-site, fight hours with the publishing and being unable to see the updated content, and eventually realise after a couple of hours that all the input was in the wrong language for the sub-site.
So i'm wondering if there is a way in sitecore to support the following:
a folder (for a sub-site) that supports that after clicking an existing item below it, the language automatically changes to the default language for the site folder
since the language is automatically changed, new items created below that folder will be created in the default sub-site language, unless the user explicitly changes it to something else
If the above is impossible or not supported, an excellent workaround would be to be able to change the language of an item language version (say, i created an english version for a page on a spanish site with all the content in spanish, so i want to tell sitecore that i want to make this version actually the spanish version, without going into copying fields manually in the translate ui
It sounds like you might want to consider a few things:
The Language Fallback Provider - this allows you to have have content fallback from one language to another if it doesn't exist.
A custom extension (maybe an event handler for item:creating or item:created) to Sitecore to switch the context language based on where an editor is creating an item.
Just ideas right now...
An alternative approach would be to work with language read and language write security settings for your content contributors.
If your contributor for your Spanish site should only be adding items in Spanish then configure their access settings so that they aren't allowed to create content in other languages.
If you have a lot of content that has been entered in the wrong language then you can use the Globalization - Export language tool (from the Start menu) to export it to an XML file, manually replace the language tags (this is as simple as a search and replace on "en>" -> "es-ES>" for example) and then reimport it in the new language using the Globalization - Import language tool. Warning though: this WILL overwrite any existing versions.
In a Sitecore Treelist or Multilist, items available for selection and items that have been selected are displayed using their Display Name. However, the language version that the Display Name is pulled from is the current Client Language, not the currently selected language of the item being edited.
An example illustrates the problem a little better...
We are importing a large amount of content into Sitecore in en-GB. We are not creating en versions of this content. Authors are logging in with a default content language of en-GB. However, Sitecore Client Language is only available in base en. The actual name of these items is not very useful (it's an external system ID), so we want the authors to see the en-GB Display Name in Treelist, Multilist, etc. However since their Client Language is en, they do not.
I see two potential solutions:
Somehow modify or trick the controls into using the currently selected language of the content item when rendering list items. (Preferable)
Somehow duplicate the en Client Language so we can set the user's Client Language to en-GB.
Any ideas on how to execute either solution, or alternative approaches to solving the problem would be appreciated.
Does this get you started?
What if you implement the Language Fallback Item Provider and set en to be the fallback language for en-GB? That will then show the en display name in the case where it doesn't exist for en-GB.