Inside SI4T search integrations : Controlling what gets indexed

si4t-logoThe open source SI4T (Search Integration for Tridion) project allows you to pass through 3 levels of control over what content gets indexed: Firstly, the default, zero-configuration behaviour. Then there is fine-grained configuration via metadata and parameters, and finally total extensibility by coding your own indexing TBBs. This article talks through how you can refine your indexing strategy by passing through these levels. Continue reading

ECL event handlers

illustrationIn my previous post about ECL, I’ve discussed querying ECL Metadata in the Broker, by making it available as part of the Multimedia (stub) Component Metadata. Now in that post I explained how it could be copied at Publishing time and the “evil” twists that process came with. In this post I’ll discuss an optional approach, using the SDL Tridion Event System which makes the process of copying external metadata to (normal) metadata less evil (just the process, not the fact that we do it ;o).

Continue reading

Storage Extension Boilerplates (for Pages to Filesystem and DCPs to Broker)

So tonight I geeked out and created a boilerplate Java project with debugging properly enabled for Tridion Storage Extensions when publishing Pages to the filesystem.  There are a couple tutorials out there explaining how to do this for ComponentPresentation and for a custom type, but not how to do this Pages.  There are a couple of interesting points with this exercise that aren’t really explained elsewhere, so I thought I’d highlight them with this post.  Also, some copy-paste boilerplate code should be handy.

Continue reading

Tridion Language Switcher

language-switcherSDL 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.

Continue reading

The Field Behavior Injection extension or SDL Tridion Behavior Field Framework

FBI logo During the 2013 SDL Tridion MVP retreat I’ve worked on the FBI extension, also known as the BFF framework. Now some of you might think that all the MVPs do during that event is drink and have fun, which is actually right. The MVPs, love SDL Tridion, they love to code, they like to have fun and they enjoy a drink while they talk. So while at the retreat, they are actually in their natural element since everybody likes the same things and those things are all actually done during their stay (sometimes at the same time). Mind you coding and drinking don’t always mix, liquids dripping out of a laptop is one of the least fun things we actually saw this year.
Continue reading

Using .NET Resources for localization in UI extensions

As by now you all have gathered, the annual MVP retreat has started and 16 MVPs are currently hard at work in a castle in Óbidos, Portugal. Our team, is working on what was defined on LinkedIn as Custom Editor Screens, for which we chose the working title Tridion Field Behavior Injection (available as open source on Google code of course).

Continue reading

Tridion Search Engine Integration – Stop re-inventing the wheel

On a recent project, it was required to do a quick integration between Tridion and a search engine (in this case Solr). We needed to push content directly in the index, rather than using a crawling approach, and there were a couple of simple search interfaces, including the ubiquitous one-box search to integrate in the web application.

Sound familiar? It may well do… almost every Tridion project requires integration with some kind of search engine, and I have to confess I am guilty of re-inventing the wheel most of the time, hacking some code from the previous project around to create something that suits the requirement of the next project

This time I thought, lets do it differently – wouldn’t it be great if there was a generic framework for search integration, that could be used on any Tridion Search Engine integration project, which you could configure/extend (controlled hacking!) as required for the particular project requirements?

Raimond Kempees and I have created that framework as an open source project and presented it at this weeks Tridion Community Webinar.

I will follow with some more posts on this project, but as a teaser, our goal is to take your existing (Tridion 2011+) implementation and have you indexing content, and a simple one-box-search running on your site in less than 2 hours, using the out-of-the-box features of the framework, and the open source search engine Solr.

Managing product information in SDL Tridion

Product information presentationManaging product information in your CMS is always a big topic for discussion. Typically a CMS is not suited for managing product data like price and stock, on the other hand not every PIM system has the ability to manage multilingual descriptions of your products that you might want to display on your website or product catalog. So combining two systems is obviously the thing to do here. Nothing new under the sun there, but with the release of SDL Tridion 2013 we have ECL which can shed a complete new light on this topic.

Continue reading

Extracting Keywords from PDF on Multimedia upload

I came across a nice library that allows you to create and manipulate PDF documents. Apart from creating PDF documents from scratch, you can also read existing ones, convert XML to PDF, fill out interactive PDF forms, stamp new content on existing PDF documents, split and merge existing PDF documents, and much more. The best part of it is that there is a C# port available which is open source, it’s called iTextSharp. Now I haven’t explored all features of it, like PDF creation, but so far it already looks very usable.

Continue reading

Creating dynamic labels within SDL Tridion content

Recently a client required a way of creating and storing ‘dynamic’ values within the content managed in SDL Tridion.  By ‘dynamic’, this could be anything from loan rates, petrol prices or the cost of a pint of beer.  So today ‘pint_beer_cost’ could be $3.50, tomorrow it could be $4.50.  Having to go through all stored content and replace $3.50 with $4.50, every time there is a need to change a value would be quite painful.

Continue reading