I often run into a scenario where clients ask to publish an image to a directory on the server. Below is a TBB that does just this. It publishes an image to a Structure Group that has the same relative path as the Folder. So you can right-click on a image and choose Publish in Tridion and then have it end up in, what appears to be the same folder on the delivery server (works great for untrained developers that just want to reference a src path).
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.
Today I gave an overview of the SDL Tridion Context Engine and how it can be used to provide device detection functionality for SDL Tridion Websites, with a focus on how simple it is to install and use in a RESS / Responsive website.
In the event you missed this presentation, the slides are available after the jump.
People have been asking me for years, to write a SDL Tridion for Dummies book. With the release of SDL Tridion 2013 SP1, our documentation features two new getting started guides (Quick Guide to creating a Page Template and Quick Guide to creating a Component Template, note, the documentation requires login, see here for how to get the login details), and these can be seen as two chapters of a For Dummies book.
Now, while these two new quick guides are a revolutionary step forward for people who are completely new to SDL Tridion, I am still missing the explanation behind them. The guides explain you step by step what you need to do to create your first Page/Component Template based on an HTML design, but afterwards you still might not have a clue about what you actually did (or why you needed to do it).
So let me ask you, do you really need a SDL Tridion for Dummies book – the complete edition – taking it one step further than the documentation?
Now you might have heard that I love WebForms and advocate it everywhere I can (which isn’t necessarily true, but let’s say it is for the sake of argument). So why, you may ask, is Bart writing a provider to an online forms solution?
The answer is really quite simple – well that’s what product management said about the idea; because we recognise that our users are using many different tools to enable and facilitate their diverse content management needs and one of these is the ability to create simple online forms. That is why we built the ECL framework and why we continue to look for ways to improve our customer’s content management experience. Actually, the answer is even simpler than that: just because I can, and because I just love ECL and by now I love it more than WebForms.
I was recently working on an implementation which required a custom Deployer Module to publish and un-publish DCPs from a third party system. In order to store and retrieve data in/from the system, certain ‘non-display’ data is required by the Deployer (think configurable username, passwords, and primary keys for the databases etc.).
Publishing actions were very straight forward, as all of the ‘non-display’ data could be stored in the contents of the DCP and parsed out before storing it. There are even more elegant ways of adding Metadata to Publish Instructions. Unfortunately this is not the case for a un-publish action. The only information sent in the package when un-publishing a DCP is an instruction to remove the specific DCP (or DCPs).
Having never faced this challenge before, I posted the question on tridion.stackexchange.com and received a suggestion from Eric Huiza regarding an un-documented extension point for the transport package called a TransportPackageHandler. I will leave it to you to decide if it is a great suggestion or not. Continue reading
Working with TBBs outside Tridion? Nothing new there you say – I already edit my DWTs in Dreamweaver and my .NET TBBs in Visual Studio. But what about those other commonly used TBB types; Razor and XSLT, what if you don’t like Dreamweaver (or don’t have a license)? Now there is a tool to help you sync local copies of TBBs with the CMS, and break free from editing them in the CMS GUI: TcmTemplateSync Continue reading
In enterprise environments there is a high chance of having your SDL Tridion Content Delivery side being hosted on an IBM WebSphere Application Server infrustructure. Setting up the Tridion Cache Channel Service should be done via the Java Messaging Service at places where such infrastructure exists: the client invested a lot into it probably for a good reason and failover is most likely a key requirement. In this article we’ll take a look at how to set up the Tridion Cache Channel Service using JMS on IBM WebSphere Application Server (WAS).
A brief history of the XSLT Mediator for SDL Tridion
Back in 2007/08, Tridion introduced a modular template framework called Compound Templates with R5.3. At the time you could use a combination of Template Building Blocks written in Dreamweaver (DWTs), C# Fragments and .NET assemblies to manipulate items in a package and add them to the output of your Compound Template.
This was a giant leap forward from what are now called legacy templates (VBScript, JScript and classic XSLT Component Templates) in SDL Tridion 2013. The concept of Compound Templates remains strong today, and is the primary way that developers render their content.
One of the key features of the template framework, was that it could be extended to support additional programming languages through the creation of Mediators. Over the years as developers got frustrated with the out-of-the-box mediators (C# Fragments, DWT and .NET assemblies), a number of community built Mediators have reared their heads, including ones for XSLT, Razor and Java. Continue reading
With the release of SDL Tridion 2013 SP1, we get a lot of new functionality. One of the interesting features I found was the ability to decommission a Publication Target. This feature is added to the Core Service, and currently not directly available from the UI. Which sounded like a good exercise to make a UI extension, with which you can call this new method.