Make a Debugging TBB for Tridion 2011 using Razor Mediator

Folks that work with me know that I’m not a super-awesome programmer; I’m a front-end guy who dables with programs. I’m way more comfortable telling you what went wrong with your CSS in Internet Explorer 8 than what happened with your Razor template in Tridion 2011. Razor Mediator for Tridion is a blend of C# and .NET that just operates about two levels higher than where I am most of the time. As a result, I often spend time trying to figure out what information there is on a component and how to grab it. So a few weeks ago, I went from knowing that Razor could access TOM.NET to actually understanding it, and as a result I wrote a little debugging TBB to help other front-end guys looking to figure this thing out.

Read More

Tridion Pro Tip: Putting a Training Doc In Tridion(the Cool Way)

Not too long ago, I worked with Alex Klock on creating a Tridion GUI extension for a client. The GUI extension was for a document embedding service provided by Crocodoc1.  Once I finished, I had to provide a training document for it. Soon after, the client wanted documentation on some other things. And then more things. Being one for efficiency and optimization creative laziness, I found a way to make sure everyone gets the latest version of the same document.  So I’d like to share a super nifty trick for embedding training documents into your Tridion implementation.

1 If you don’t know who Crocodoc is, you should rapidly become acquainted. Their API definitely is not one that sucks; it converts PDFs, PowerPoints, Excel documents, and Word documents into HTML (and soon to be HTML5) so that you can read the same document on any device with a screen, without nasty platform-based plugins. 

Read More

The More You Know: Tridion 2011 and Keywords

The More You Know (Trademarks and Copyrights of NBC)

The More You Know (Trademarks and Copyrights of NBC)

I’m a child of the 80′s. Every Saturday morning, between Teenage Mutant Ninja Turtles, X-Men, and GI-Joe I’d catch at least two or three Public Service Announcements from NBC where they’d teach me about bullying or doing my homework, and end it with, “The More You Know.”

The last few Tridion 2011 projects I’ve had have used Categories and Keywords pretty extensively. The Keyword class is relatively simple, but quirky. After discovering another extremely odd quirk a few days ago when I was debugging something for a client, I had to explain the craziness of the issue in our next status call. After I explained the issue and a few folks’ mouths were agape and they were scratching their heads, it was one of those moments where you just have to quote NBC: “Yep. The more you know”.
Read More

Going Bilingual in Tridion 2011 with Razor (or: When Text isn’t content)

In  a current project, we have a website that’s in both French and English which we’re transferring into Tridion 2011,  using Razor Mediator. This is not my first bilingual website, and it definitely isn’t my first Razor project, either. However, it’s the first time I’ve had both at the same time. So what I’d like to share is how to solve a specific problem where you have content that could be hard-coded in your Template Building Block (TBB), but can’t, because it needs to be translated.

Read More

The Problems of a Lift and Shift CMS project (and why clients should stop asking for them)

Every CMS implementation is different, but you can generally categorize them into two major groups, regardless of the details: New site or Lift ‘n Shift. If you’re unfamiliar with the phrase “Lift and Shift”, it’s where we take an existing website, in its entirety, and move it into a CMS without modifying any front-end code. The untrained and uninitiated sometimes call this a ‘copy and paste’. This is a popular request from clients on for two reasons: they perceive it to be more cost-effective and they believe it should take less time (which sometimes still has a financial motive).

Unfortunately, the idea of moving an old website into a new CMS is a bit like buying a Porsche and then towing it with your Pinto. It’s more damaging to the bottom line, slower than you’d expect, and completely relieves you of the joy of using what you bought. So let’s talk about what the issues are that arise from a “Lift and Shift” exercise.
Read More

SDL Tridion Razor Mediator: Ternary Operators

It was about two weeks into a project at Tahzoo that I had started in June that I made a discovery that rocked my world: the ternary operator. I think it was my coworker and one of my leads, Piti Itharat, that had introduced it to me. Since then, the ternary operator has become my best friend and I now even make it standard practice in JavaScript, too.

So here’s how I’ve used the ternary operator in Alex Klock‘s Razor Mediator 4 Tridion. You’ll want at least version 1.2 for most of these examples.
Read More

SDL Tridion Razor Mediator: Some Handy Keyword functions

I’ve recently finished a big project with Tahzoo that runs on Tridion 2011 and uses Razor Mediator. There’s a growing number of Tridion  Razor Mediator implementations out there, but this one was a tad different for a few reasons. For one, this project was heavily taxonomy-dependent. Navigation is generated with categories and keywords, and even certain landing pages depend on categories and keywords. So as I developed in the project, I discovered limitations in how version 1.3 accessed the keyword model. Well, Alex and I collaborated on some 1.3.1 methods for working with keyword properties that Razor won’t let you directly access.

So if you’re running Tridion 2011 and Razor Mediator 1.3 or earlier, this post is going to be relevant to you. These are all helper functions or simply public functions which you can use in your next project.
Read More

HTML5, SDL Tridion, and a dab o’ jQuery

At Tahzoo, we pretty much shoot for HTML5 websites 100% of the time; the only time the project isn’t HTML5 is if the client explicitly says so. We have a current client whose HTML5 site also required some fun Ajax things like creating an interactive poll and even some email functionality. In order to really accomplish what we wanted, we realized it would be necessary to take advantage of some certain HTML5 features and even write a tiny jQuery plugin to help us out.  So if you’re a Tridion developer, this post’s for you. Read More

The layers of Design

Ogres and onions have layers…

And so do websites. Depending on who you’re talking to and how they’re slicing it, you’ll get different names that essentially represent the same thing: content, design, and functionality. While the end user looks at a site and sees seamless pages linking to one another, the content authors, designers, and developers see the website as a collection of layers that interact with each other.  As content strategies become more complex, we see content being sliced into more distinct layers for content management systems while the design gets treated as a flat, layer-less component of the site.
Read More