Released last week – the first step on a path to lower the barriers (time, cost, knowledge, lack of standardization) of implementing SDL Tridion. In this post I aim to give a short introduction, by highlighting what you should and should not expect from the Reference Implementation.
There are a number of steps required to install SmartTarget and all the required pieces, including FredHopper and the new SmartTarget CD Webservice Extension. That’s right; Tridion’s OData Webservice now comes with a SmartTarget extension to grab your Promotions’ items… I digress. In this article I am going to assume that you’ve done your homework and read the SDL Live Content documentation regarding the necessary moving parts, wiring and plumbing, and have it all installed. (If you’re looking for an introduction to SmartTarget 2014, have a look at John Winter’s article: A look at SmartTarget 2014). So here we’ll just jump right into answering the question of how to integrate DD4T.NET with SmartTarget 2014 and I will share an MVC HTML Helper Extension class providing us with control to render SmartTarget’s Promotion Items in your DD4T-driven MVC.NET application.
I have been busy for the last few months working on a new SDL Web ‘product’ – the Tridion Standard Implementation, which is an out-of-the box Tridion CMS and web application framework to learn from/build on top of. One of the things we are focusing on is having a single site to serve all devices with optimizations driven by SDL Mobile. Part of this is ensuring that we are smart about serving images to a device, while still making life easy for editors and (MVC) view developers. There turned out to be quite a lot of factors to consider, but I think we came up with a pretty good solution. Continue reading
If you hadn’t noticed, SDL Web released a new product recently: Contextual Image Delivery, which in short enables you to resize, crop, trim and convert formats for images. I thought I would see how easy it was to set up in an ASP.NET MVC environment, and it went pretty well, but there are a few subtleties Continue reading
Sometimes we have a need to render a nested Component using its Component Template. The Tridion API provides us with the following function:
Now, the problem with the above is that if we hardcode TCM IDs all over the place, our template becomes non-Content Porter friendly. If we port this thing from our DEV CM to QA and PROD CMs, then we have to have a step in our deployment procedure runbook to update the TCM IDs everywhere where this is done.
One way to solve this is to provide the ability to refer to the nested Component Template by name instead of the TCM ID. So the template code will look as follows:
This can be accomplished by a simple Template Building Block that pushes the names of all the Component Templates available in the system onto the Package. Here is the TBB and an explanation of how to use it.
Does publishing a Component linked to many Dynamic Component Templates lead to publishing performance issues?
I recently ran into a scenario where, due to an update to business requirements, I had to change Component Templates from statically embedded to dynamic. In my case there were 14 different CTs linked to the same Schema. This means that when 1 Component is published there are 14 Component Presentations being rendered and sent to the Broker. The question then arose, does this kind of a design lead to publishing performance issues?
Tridion 2013 SP1 comes with an added bonus for anyone looking to integrate another system with Audience Manager: a new web service which allows you to import and export Contacts and Keywords through the uploading and downloading of CSV files.
SDL Tridion is known for its superior capabilities when it comes to managing multi-lingual websites, and such websites typically have a some kind of a switch to allow switching between languages. In this article I’ll attempt to explain the concept of setting the Publication Context and how to use Tridion’s Dynamic Linking to allow us not only switch from a site in one language to another, but to do it for any given page on the site.