4

How do <TCDL> tags work with the GraphQL-based Content Delivery API(s)?

I understand historically customer Content Management code and/or the Default Building Blocks would transform Component links in Component fields or rich text format areas to the appropriate platform-agnostic <tcdl> markup.

And depending if you're developing for .NET or Java, the appropriate attribute would be added (either in templating or publishing). Mainly 'runat="server"' was added for .NET.

Later we had REL, as a more platform agnostic version of TCDL.

Questions:

  1. With GraphQL, does TCDL still apply?
  2. Or perhaps, it's better to ask can it still apply if using rendered/raw content?
  3. If so, can we still create custom TCDL tags? I can see the documentation for Sites 9.1, but not later versions.
  4. And does TCDL behavior differ between data pipeline (template-less) content or the Sites 9.6 semantic content modeling?

For background, I mentioned custom TCDL tags in this answer https://tridion.stackexchange.com/a/21797/46 but didn't know if this is still possible in recent versions, or even recommended going forward.

1 Answer 1

1

When requesting content over the Public Content API using GraphQL, you can control whether tcdl tags are rendered using rawContent() with the renderContent parameter set to true or false.

The Documentation Center explains renderContent set to true will resolve TCDL link tags.

To answer my original questions:

  1. With GraphQL, does TCDL still apply?
    Yes.

  2. Or perhaps, it's better to ask can it still apply if using rendered/raw content?
    TCDL links will render if using rawContent(renderContent: true).

  3. If so, can we still create custom TCDL tags?
    As far as the documentation is concerned, custom TCDL tags are still a thing.

  4. Does TCDL behavior differ between data pipeline (template-less) content or the Sites 9.6 semantic content modeling?

I think you can get TCDL tags resolved in requests either way, but I'm not sure of the right syntax yet.

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.