2

So, I am working on a multilingual on-premise enterprise SP2013 farm-solution which will support three different languages (NO, SE, EN), and of course has a working MMS with all the terms that I need. The terms and groups themselves update correctly when changing language; but the labels, or column titles, does not.

Say I create a page. Use my custom page layout for an article. This article has fields, for instance "Country of Relevance", that takes values from the term store. The terms are all in correct language, as mentioned, but the label of the field stays at the language that the site collection was first created with.

This only happens for the MMS fields, every other custom field is updated according to language.

Below is the XML used for the MMS fields

  <Field Type="Note"
     DisplayName="CountryOfRelevance_0"
     StaticName="CountryOfRelevanceTaxHTField0"
     Name="CountryOfRelevanceTaxHTField0"
     ID="{9EDAB26E-CC44-4027-AB05-CB44EA3A6A46}"
     ShowInViewForms="FALSE"
     Required="FALSE"
     Hidden="TRUE"
     CanToggleHidden="TRUE"
     RowOrdinal="0"
     DisplaceOnUpgrade="TRUE"
           Overwrite="TRUE"
     Group="PrivateGroup" />

  <Field ID="{5D412780-C0A5-40AA-BF83-1883977E7129}"
       Type="TaxonomyFieldType"
       Name="CountryOfRelevance"
       DisplayName="$Resources:ResourceGroup,fieldCountryOfRelevance;"
       ShowField="Term$Resources:core,Language;"
       Required="FALSE"
       EnforceUniqueValues="FALSE"
       Group="PrivateGroup"
       StaticName="CountryOfRelevance"
       DisplaceOnUpgrade="TRUE"
             Overwrite="TRUE"
       Mult="TRUE"
       >
    <Customization>
      <ArrayOfProperty>
        <Property>
          <Name>TextField</Name>
          <Value xmlns:q6="http://www.w3.org/2001/XMLSchema"
                       p4:type="q6:string"
                       xmlns:p4="http://www.w3.org/2001/XMLSchema-instance">
            {9EDAB26E-CC44-4027-AB05-CB44EA3A6A46}
          </Value>
        </Property>
      </ArrayOfProperty>
    </Customization>
  </Field>

And the fieldrefs.

<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
  <ContentType ID="0x010100C568DB52D9D0A14D9B2FDCC96666E9F2007948130EC3DB064584E219954237AF39008FB49E4987C54D3BAB591C7EFC68752500F7541C13372149FAB244CDD1496967D8" Name="$Resources:ResourceGroup,ctArticleName;" Group="PrivateGroup" Description="$Resources:ResourceGroup,ctArticleDescription;" Inherits="TRUE" Version="0">
    <FieldRefs>  
      <FieldRef ID="{5D412780-C0A5-40AA-BF83-1883977E7129}" Required="FALSE" Name="CountryOfRelevance" />
      <FieldRef ID="{9EDAB26E-CC44-4027-AB05-CB44EA3A6A46}" Required="FALSE" Hidden="TRUE" Name="CountryOfRelevanceTaxHTField0" />
      <FieldRef ID="{f3b0adf9-c1a2-4b02-920d-943fba4b3611}" Name="TaxCatchAll" />
      <FieldRef ID="{8f6b6dd8-9357-4019-8172-966fcd502ed2}" Name="TaxCatchAllLabel" />
    </FieldRefs>
  </ContentType>
</Elements>

The problem also holds when looking at the column names in both Site Settings > Site Columns, and in Library Settings. However, I can take my respective resource string (i.e. $Resources,ResourceGroup:ResourceString), copy it, edit the column, and paste it in as it's name - and it updates. But this is clearly not a solution, just a test to confirm that the resource itself is not the problem.

I've tried many things (both from the UI and PowerShell, as well as code-behind), and search many a blog, but to no avail.

I would greatly appreciate if anyone had anything to suggest that I could try. I am at a loss after so many hours trying.

Thanks in advance.

PS: If I am lacking some critical information to help solve this issue, please let me now so that I can add it as soon as possible. Thank you.

2 Answers 2

1

We finally found a solution:

There is a property in the Field tag; Overwrite="TRUE". If this property is set, it will ignore localization of labels, for some reason that I haven't yet figured out.

So when I removed this property completely, it worked just fine.

Just SharePoint working as designed, I guess!

0

Not sure if you are aware but the way you provision Managed Metadata fields is quite particular. Basically this has been treated on the web by various experts, most notably i would point to Wictor Willen's article (http://www.wictorwilen.se/Post/How-to-provision-SharePoint-2010-Managed-Metadata-columns.aspx), and also the most recent from Doug Ware (http://www.instantquick.com/index.php/correctly-provisioning-managed-metadata-columns?c=elumenotion-blog-archive/random-whatnot)

You should also look (via SharePoint designer 2010) at the content of the "catch all" field (Note) where all Labels are loaded - make sure you find your translated labels there.

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.