Hot answers tagged

14

Tridion doesn't have 'page links' it uses component links. This makes sense if you think about how you separate the components (content) and structure (pages) in different publications. you link / relate one component to another. You then can build the linking rules and logic into your templates. Tridion can then also own broken links to stop them ...


14

You can localise and change the schema field descriptions, to allow a local team content editors to see friendlier labels, which is a nice touch. You may also localize a schema to apply a different workflow. You can't localize a schema to add new fields or change the structure of it. This is by design in the CMS. Imagine if a user accidentally ...


13

Manoj, I really want to understand why you really need that; Tridion does not have the functionality that you are looking for OOTB, and there is a valid reason for that. Please see my points below: If you want to link to a page maintained outside the Tridion, make a schema field of type - External Link If you want to link to a page maintained in Tridion, ...


13

There is no reason in principle not to use one namespace for multiple schemas, as long as those schemas don't attempt to define the same types. A namespace is a mechanism to enable you to prevent name collisions. If you have some other factor helping to prevent such collisions, there's no reason why namespaces should do all the hard work. The most ...


13

I - like most other Tridion implementers, I'm sure - have also been confronted with this very important decision, and my conclusion has always been that It doesn't matter as long as it is consistent Often the challenges I've seen are more around semantics than actual grammar - making sure your "displayHeadline" field is always called "displayHeadline" on ...


12

When you opened your Schema to edit it, you got a notification indicating that your changes would not be updated in derived Components. (in 2013 it mentions Changes to this Schema will affect all related items. together with a Show Where Used button, agreed this isn't as clear as it was stated in older versions, but I believe this is the least read message ...


12

In a typical Tridion Blueprint, you have content created or translated in a single language per publication. With this in mind, Tridion allows you to localize the schema and change the Description of each field in the schema. So in your French translation publication, or your French website publcation you could have schema field descriptions translated to ...


12

Using the same namespace on all your schema is a TERRIBLE idea. Especially if you ever use XML technologies to read values from the XML. Imagine you have a Sandwich Schema and and a Restaurant Schema, both schemas have a field called "Name". Now for what ever reason you need to merge these resulting Component XMLs into one document. All the nodes in the ...


11

I would first say selecting a color for text is not a very common use case and most organizations prefer to set the style and color using CSS stylesheets to provide a consistent look and feel for the website. However, I understand your requirement and will provide 3 options: The Rich Text field has an option to set a color or a CSS class on text. You ...


11

This is happening because you have 2 embedded schemas in the same schema, and did not change the Root Element name for either. More detail on this is available on this answer. The short story is that you can fix this by changing the Root Element Name of your embeddable schemas to something else than "Content". You may have to change the schema type to ...


10

I can tell you that I wish it was that simple. What you're asking for is not Page linking (which would be relatively easy to do in the Tridion Core). What you're really asking for is cross-publication linking, which is next to impossible to achieve in Blueprinting. That said, I commonly implement a set of "dummy" components for special pages, these ...


10

Actually, yes, it will potentially cause issues in the future. For one, we're looking into implementing "Find Schema by Namespace" functionalities on CM and CD - having the same namespace for all schemas will "confuse" Tridion, at the very least. I have also seen problems with Content Porter Translation Manager (though there was other stuff going on in the ...


10

Through TDSE, you will not able to populate the default value automatically, however, you can try the Code Block below to retrieve the default value of a particular metadata field in the Schema: TDSEClass tdse = new TDSEClass(); tdse.Impersonate(userName); Schema schema = (tdse.GetObject(schemaId, EnumOpenMode.OpenModeView, null, ...


10

To hide schema from specific users or groups, place them in a folder and apply security which reduces the read permissions to specific groups. When the drop down is generated in the create component view, only schema to which the user has read permissions will be displayed. I typically have a few folders for schema (e.g. System Schema, Content Schema and ...


10

It appears that having a keyword field in the metadata of a component causes this problem after HR1. Hotfix CME_2013.1.1.88649 available https://www.sdltridionworld.com/downloads/hotfixes/SDL_Tridion_2013_SP1_HR1/index.aspx fixes the issue.


9

You can localize the schema and update the Description field as shown below. Localization of schema's does not allow you to change any of the field definition e.g. data type


9

You need to remove that old version that is referring to your Schema. Make a note of the specific version(s) that were using it in the "Where Used" dialog. Then if you open up the version history of the item that was using your Schema (ensure you do this at the item's owning Publication), you can now delete the version by right clicking on it. The reason ...


9

If you set a linked schema on folder and call GetDefaultData from Coreservice it will return a new component with the schema set and appropriate component type set multimedia or normal. Mandatory has no effect on returned default data. However, it has impact on saving the component as described below. From API docs If the linked Schema is not ...


9

I think it's something you agree as a team. At Building Blocks we tend to use underscored names for XML names e.g some_field. I don't think there's a "right" way of naming, as long as it's consistent throughout the implementation (and valid XML!)


9

In your screenshot, notice how the "Content" attribute is null. For each component, you need to call: ComponentData component = (ComponentData)coreServiceClient.Read( componentTcmId, new ReadOptions()); Now you can parse the component.Content to read the field values. By the way, if you happen to have metadata fields as ...


8

Vishal, Did you try doing a "Where Used" on the owning publication level? The error that you get "Only used in old version" indicates that the schema is still in use by some items in older versions. You might need to manually go to the item history and delete any older versions of item that have reference to the Schema before you can remove the Schema ...


8

OK - I'm going to pitch in with the same damn answer.... It doesn't matter as long as it's consistent ... but I'd like to add If you don't make it easy to type from memory, you will hate yourself.


8

The first thing that strikes me about your question is that there is already a tool to do most if not all of those things - The Content Manager Explorer! "Don't re-invent the wheel!" (just playing Devil's advocate here). The API you will most likely want to use is the Core Service. This is a WCF web service that you can use to communicate with Tridion. The ...


8

In SDL Tridion 2013 (SP1), the same error persists when you try to send the same structured content via the Translation Plugin. To fix (in Translation Manager) we used the hotfix TT87682 part of the TM package here. We successfully content port our content, with this same scenario - our versions are: from SDL Tridion SP1 HR1 to SDL Tridion SP1 using ...


8

The nearest to an out of the box solution you have available is described by Alvin in the comments - and as Alvin indicates - it's not a good solution. You could interact with the Event System and stop saving on non-permitted schemas. There are a few implementation patterns you could consider such as: folder metadata with, say, a category of 'locked ...


8

CoreService: var list = ClientAdmin.GetList("tcm:1-1-8", new UsingItemsFilterData()); var listXml = ClientAdmin.GetListXml("tcm:1-1-8", new UsingItemsFilterData()); Tom.NET: schema.GetListUsingItems();


7

Manoj. With regards your question on Dynamic Linking I'd recommend this Alvin's post at http://www.createandbreak.net/2012/05/how-to-remember-tridion-dynamic-linking.html


7

I agreed completely with Nuno's answer above, but wanted to add my two cents. The rule of: It doesn't matter as long as it is consistent Is really important to me as I use it when writing my templates. I'm able to know the naming rules of the schema field so that I can really pump out dwt without having to keep checking the names of the schema / ...


7

When you are talking about best practice in the WCM space it is very vague as this entirely depends on the Business Context and End User experience. Also, above what you are saying may be correct depending on the actual requirements or it may be an overkill. You need to consider following points: Do you have schema which are common to all or majority of ...


7

To elaborate on Rob's answer, the code to add to yours would be something like: SchemaFieldsData schemaFieldsData = Client.ReadSchemaFields(txtSchTCMURI, true, null); foreach (var schemaField in schemaFieldsData.Fields) { bool isMandatory = schemaField.MinOccurs > 0; // Do something with isMandatory } or perhaps var mandatoryFields = ...


Only top voted, non community-wiki answers of a minimum length are eligible