2

I just want to collect your views on having a schema with all text fields as RTF fields.

I know there may be issues like formatting or losing non-standard HTML tags from it but is there any other disadvantages of it which I might not be aware or skipping from my mind at the moment.

Update:

I would like to give end user a complete freedom so that they can do formatting of all content if they like including Images etc.

1

The rich text format area is not HTML but, as Dominic Cronin has explained (a few times), XML in the XHTML namespace. :-)

So the tradeoffs include:

RTF:

  • Very flexible, but NOT complete HTML freedom
  • Rich text and source editing but not an IDE
  • Control (XSLT filters) if desired
  • Some (XHTML) validation and clean up features
  • Keyboard shortcuts and rich text options like styles through buttons and drop-downs
  • Forcing RTF to behave like HTML(5) changes configuration in a way that may not be implemented in the same way in future Tridion versions (i.e. unsupported)

Text:

  • True freedom, including the ability to add invalid markup
  • No RTF functionality (insert link, styles, etc.)
  • Also not an IDE
  • Minor note: template needs to handle encoding (I believe entities and certain characters will be escaped by default)

For both you also want to consider scenarios with Experience Manager.

As a content modeling question, I find naming the content type and even the end-user role helpful. "Power" Editors might need different functionality from front-end developers. "True" freedom seems to correlate with promotional content types.

| improve this answer | |
2

My personal preference is to use RTF fields only for things that are meant to be formatted. The usual candidate of course is things like "body" text of a article, in which case the user would appreciate to have the ability to be able to insert images/links, etc.

Saying that editors might be able to mess up with the design of the site or insert "inappropriate" javascripts, etc. But you can restrict that by applying XSLT on the formatted fields, or apply an approval process for further control.

Sometimes an advanced user would love to have the ability to edit HTML source without involving developers. Recently I came across a client who wants to track a campaign link click using google analytics and with his javascript skill, he would be able to do it through RTF field. So "relaxing the rule" sometimes is not all bad.

You must have your reasons. Could you elaborate what fields and what they are for? The above is only a very generic idea that may not be relevant without knowing more.

| improve this answer | |
  • Thanks for your response but it does not give quite an answer to my query (any downside or challenge if we have all fields as RTF). I have also update the question to add my one of the use case scenario – Pankaj Gaur May 20 '14 at 12:14
2

Aside from the obvious issues regarding design consistency and formatting (which you've already acknowledged), one thing to take into account is the fact that if you are planning on doing a lot of automation (e.g. with the Core Service), having a lot of Rich Text will only make things more difficult as you'll have to sanitize everything as valid XHTML.

Another potential issue is any scenario in which you want to use your fields for anything other than just dumping rendered markup to a page. If you want to do anything like produce a list of values or - worse - perform a conditional on the value of a field, you're going to run into problems with stray tags and containers. It's not always easy to predict that you'll need to do this up front, either.

I'd generally avoid using Rich Text fields at all unless you have a specific requirement to do so and, even then, use them only where you need them.

| improve this answer | |
1

Interesting you mention, all text fields as RTF fields. In that case why still use multiple fields is the first thing I wonder?

It sounds to me like your requirements might be coming close to, a Schema with a single RTF field, so the editors can work like they do in, let's say Wordpress ;o).

I always try to justify the usage of RTF fields in my Schema with the actual use case. Does the field require user formatting or the ability to place images or links in the text? Can I not get away with external link, Component link or multimedia link fields? Then I'guess it will have to be an RTF field. It all comes down to structuring your data, but you have to keep it easy to use for the Editors too. Too many fields in a Schema is not good, just having a single one is usually also not a good choice. But in any case, make sure that each field has the right format, that is a simple choice for date and number fields, but when it comes to text, you have several options to choose from.

To make sure these RTF fields are used correctly, you can consider setting up its restrictions, so remove all available options you don't want to be used in there and possibly also invest time in using the XSLT on the RTF to clean it up before every save.

| improve this answer | |
  • Thanks Bart, it really helps. I am in line of your suggestion - Justifying the use case of RTF field and that's why collecting views of experts :) – Pankaj Gaur May 20 '14 at 12:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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