About Chris Summers

Chris has spent his career creating and developing technology for website operation and management. With a background in engineering and design, for the past 12 years, Chris has focused on implementing SDL Tridion products, working with companies and their technical staff to ensure an in-depth understanding of the software and complete successful, on-going implementations. Chris has worked with more than 60 of the largest and most expansive SDL Tridion implementations in the world, from launching custom integrations, offering technical training and mentoring consultants through to certification. When he’s not talking or thinking about websites, Chris is an avid chef, an amateur carpenter and a flying trapeze enthusiast. A fan of travel and adventure, he’s a citizen of the world who currently makes his home in Boston, USA.

So you committed the SDL Tridion proposal on Area 51. Now what?

A lot of people have been jumping on the commitment band wagon for the recently proposed Q & A site for Tridion on Stack Exchange’s Area 51 site. This is a great step toward the proposal making it to the beta phase. Thanks to all of you who have got involved so far.

For those who don’t know, Stack Exchange is the creator of some generic technical Q & A sites such as Stack Overflow, Super User and Server Fault. They also make their platform available to more focused communities for products like Drupal and Word Press, as well as completely non-technical sites on various topics as far reaching as gardening, literature and poker. These sites are built by the online communities that want them. Before Stack Exchange sanctions the use of their platform, they want to be sure the sites will get used, and are filled with good content backed by an active community of knowledgeable contributors. They do this by allowing anyone to propose a site on their staging area called Area 51, and measuring its progress as it moves through various phases from initial definition, through commitment and beta until the site becomes live. Continue reading

A Custom Resolver in practice

Back in February I posted an article about Custom Resolvers. Yesterday I rolled my first Custom Resolver into a production environment, so I figured it was time to share my findings.

Background

To set the scene, it probably helps to explain the business requirements first. We have a large implementation with over 300 publications. Many of these share content, some of which needs to be secured, and links to binaries that also need to be secured. We have a third party security solution, which is implemented as a proxy on top of our published site. The proxy looks for a security.xml in the folder of any request, and then prompts for login etc depending what is contained in the XML file. This works very well for pages, but the pages often link to binaries (which were all contained in the “/images” directory for each publication). In order to secure binaries with different sets of restrictions we needed to bind the binaries in different Structure Groups. To simplify the concept, we decided to publish a variant of each binary linked from a page to the same Structure Group as the page. This has the desired effect of securing all binaries that are linked from secured pages with the same restrictions.  When a binary is linked from multiple secured pages, multiple variants of the binary are published. Continue reading

Why we don’t use SDL Tridion Workflow

The SDL Tridion MVPs were chatting on Skype last week, and the subject of workflow came up. One MVP told us he was working on a particularly interesting workflow challenge, and another shared the fantastic one-liner “Rule #1 for SDL Tridion Workflow: Don’t do it”.

Now based on my last post “Welcome back SDL Tridion Workflow” I thought it would be interesting to take a look at why so few clients implement SDL Tridion’s workflow solution for managing their content. After all, I bet 9 out of 10 clients list workflow as a feature in RFIs when making their WCM selection shortlists. Continue reading

Welcome back SDL Tridion Workflow

Over the last two weeks, I have had the privilege of spending a lot of time with some of the R&D folks at SDL who are working on the forth coming releases of their world beating WCM platform SDL Tridion. At both SDL Innovate 2012 and SDL Tridion HQ in Amsterdam this week, there has been a lot of talk about “bundles”. Now I can’t really tell you anything about bundles per se (because I really don’t know the details), but from what I hear “it will be the revolution of SDL Tridion Workflow” which has been the thorn in many a consultant and customer’s side since R4. The biggest feature of the new workflow offering will be grouping items together into “Bundles”, allowing you to process complete work packages through a workflow process instead of just a single Page or Component. Continue reading

Installing SDL Tridion Hotfixes from a Network Location

This is not strictly an SDL Tridion issue, but I figured I would share it here in case others ran into the problem.

I just installed a hotfix on my development machine for a publish states issue in SDL Tridion 2011 SP1 which fixed a problem on marking items as published or not after installing the service pack. To apply the hotfix I needed to install an updated Tridion.ContentManager.Publishing.dll into the GAC. Continue reading

Whitespace in SDL Tridion SP1 XML

Before reading this, and getting too alarmed, this blog of caution really only applies to those who use XSLT templates (either using the XSLT Mediator or traditional XSLT Component Templates). Although it may have a wider impact that I am not aware of.

I just upgraded a client implementation to 2011 SP1, and mysteriously some of my components were failing to publish. At first this seemed to be a template issue, but on further inspection it became apparent that components that had been made before the SP1 upgrade were fine, and those create or edited after the upgrade were failing.

In one of our XSLT Template Building Blocks, we essentially copy the XML of the Component in order to make all the data available to the presentation code. In addition to copying the nodes, we also add some additional attributes.

<image>
    <image xlink:type="simple" xlink:href="tcm:0-114344" xlink:title="ross" xmlns:xlink="http://www.w3.org/1999/xlink"/>
</image>

Gets transformed by our template to

<image Orientation="portrait" Photographer="- Not applicable" Illustrator="">
    <caption>Some Caption</caption>
    <image type="pub148w" height="148" width="60" src="tcm:417-117248" uri="tcm:417-117248" /
    <image type="pubArticleFull" height="480" width="640" src="tcm:417-117248" uri="tcm:417-117248"/>
</image>

This was working perfectly from version 5.3 up until 2011 GA. However we discover that the XML of components saved using SDL Tridion 2011 had changed

GA XML

<image><image xlink:type="simple" xlink:href="tcm:0-114344" xlink:title="ross" xmlns:xlink="http://www.w3.org/1999/xlink" /></image>

SP1 XML
<image>       <image xlink:type="simple" xlink:href="tcm:0-114344" xlink:title="ross" xmlns:xlink="http://www.w3.org/1999/xlink" />       </image>

The additional whitespace was being added to the image node by my XSLT template, and it was preventing me from adding the Orientation, Photographer and Illustrator attributes to the element (you can not add attributes with XSLT to a node after adding text, whitespace or nodes)

To get around this I have added <xsl:strip-space elements=”*”/> to the top of my XSLT which fixes our problem, but it does mean we now need to validate the output of all our templates to make sure we are not stripping out any whitespace that we actually need.

Lesson of the day: Never write an XSLT thinking whitespace is irrelevant.

You decide whether you think this is a bug or not, but in the meantime, I hope this post might help you debug any XML related woes you stumble upon after upgrading to SP1.

Fixing GUI issues after upgrading to SDL Tridion 2011 SP1

I have just finished upgrading a client’s SDL Tridion 2011 GA instance to SP1, and on the whole the experience was fairly painless with the exception of my post on publishing permissions and some minor issues with the Content Manager Explorer (CME).

I believe my client was one of the earlier adopters of SDL Tridion 2011 GA, and we applied a number of early hotfixes to the GA instances. My guess is that we may have installed some “unapproved” hot fixes which we not versioned correctly or that in a debugging effort I accidentally saved some files whilst hunting for a problem.

This appears to be the root of the latest problems we have seen. In an effort to not mess up any customized code or configurations, the SP1 installer does not update any files with unknown versions. In our case this meant that several files were not updated, and the CME was not functioning correctly (several items were not loading or saving, and various JS errors were appearing) even though the installer appeared to have completed successfully.

Continue reading

The story of SDL Tridion 2011 Custom Resolver and the allowWriteOperationsInTemplates attribute

Before I start with this blog, let me thank all those who have helped me find my way whilst stumbling around in the forest on this one, you know who you are. Had I read the release note properly over a year ago, I am sure I would never have made this journey, however I have learned a lot and figured I would share what I found.

A long, long time ago, in an office somewhere in the Netherlands I decided to make a VBScript Component Template for Tridion R5.0 which created the HTML for an article, and then published a summary DCP (Dynamic Component Presentation) for inclusion in a broker driven index page. I was a happy man.

Sometime later, I was at a client in Norway, and I only had rights to make templates and pages etc. My client needed me to create a new user in the CMS. The Tridion Administrator was on vacation, so I made a template that created a new user in the system. Again, I was a happy man. Continue reading