Recently I was working on an Experience Manager installation where the pre-dev application (XPM enabled) had a SSL certificate installed. When we installed Experience Manager and tried firing it up for the first time we notice that all our scripts were being blocked. The error in the console told us that we were trying to load scripts from unauthenticated sources; AH – we were trying to load the XPM bootstrap javascript file from an HTTPS site, while the CM was just communicating over HTTP. Continue reading

Using Alchemy’s Built In Libraries

One of the features of Alchemy that I think will end up being the most helpful in the future is the way it lets you build a plugin and never have to worry about whether it’ll stop working with future versions of Tridion. This is because Alchemy provides helpful wrappers for the Anguilla framework used to interact with the CMS. If Tridion ever moves on from Anguilla (as has long been rumoured) Alchemy will update the wrappers to support the new technology and if your plugin is using these wrappers you shouldn’t even have to think about it. Continue reading

Setting Alchemy Plugin Permissions

alchemySo you came to Tridion Developer Summit and heard about this hip new Tridion framework called Alchemy. Or maybe you’d already heard of Alchemy and have been anxiously awaiting the chance to try building your own plugin. The problem is, you can’t build and test a plugin on your Tridion environment because you can’t let just any user play with your plugin as you develop. Fortunately, we at Alchemy recognize that security is a huge concern for many users and we are working hard to address this as comprehensively as we can. Unfortunately, we aren’t there yet. However, if you are really anxious to start building I’m going to show you how to lock down your plugin so that only certain users have access to your ribbon bar or context menu extension, using just the Alchemy API and some JavaScript. Continue reading

John Oates’ Moustache

Screen Shot 2015-09-08 at 17.29.59Recently one of my coworkers was saying she didn’t know who Hall & Oates were. This got me thinking, what better way to preserve the legacy of the great rock and soul duo than adding John Oates’ moustache to some Tridion icons. So, for anyone interested in Oatesifying your CME, follow these steps.

  1. Download the image at the end of this post
  2. Go to %TRIDION_HOME%\web\WebUI\Editors\CME\Themes\Carbon2\Sprites
  3. Rename cme_Sprites.32px.png to cme_Sprites.32px_old.png
  4. Copy the downloaded image to this location
  5. Open %TRIDION_HOME%\web\WebUI\WebRoot\Configuration\System.config
  6. Increment the modification attribute of the server version
  7. Clear your cache and reload Tridion
  8. Enjoy the Oates!

Continue reading

Custom Renderer – Index Keyword Key in SmartTarget

keywords in SmartTargetI found out how to use a new CM-side extension point today; Renderers. I had been struggling for a while with the fact that SmartTarget does not index the Keyword key – which was precisely what I wanted to set up some promotion content selection filters on. It turns out to be quite easy, and indeed gives a generic method for messing with the content that SmartTarget indexes without having to fiddle about on the Delivery side with Java or Kettle.

Continue reading

Intro to the Event System

rear-view-mirrorAn event, in any computer system, is an interruption in the current process. The computer is busy doing what it should be doing, and then something happens to stop it and send it in a different direction. In old systems this was limited to the user clicking a keyboard key or a mouse button. Now, with much more complex systems, it can include state changes, network events, new data, and nearly everything else. Continue reading

Alchemy Plugin Configuration

As a general rule, installing an Alchemy plugin is a simple one click process, outlined at the Alchemy Webstore. This opens up Tridion to all kinds of configuration by people who would have found the DLLs, XMLs and config files ordinarily associated with Tridion customization off-putting.

But wait! What if you really like configuration and don’t feel like you’ve accomplished anything until you’ve had to update an XML or two? Well, it turns out that Alchemy will still meet your needs, weirdo. You see, some plugins still require configuration, even if it is quite simple. Take DXA Page Preview or Where Used Plus for example. Both plugins include references to settings in their a4t.xml file. This file will always contain a plugin’s configuration settings and will always be found at


So, if you ever find a reference to a plugin’s settings and want to know just what you can configure for a given plugin, check out it’s a4t.xml. Most often it won’t have anything you need to think about, but sometimes you’ll find some important settings there. If you’re developing a plugin and want to know more about using the a4t.xml file, check out the Alchemy documentation for details.

Alchemy and the Dangers of JQuery Scope

While working on a plugin with Alchemy recently, I noticed something helpful: my popup window automatically inherited the Tridion CSS and JS. This is especially great if, like me, you want to make a popup look like Tridion. However, it did raise one concern. GUI extensions often rely heavily on JavaScript, and if, like me, you’re a Tridion developer who dabbles in JS you might not be that familiar with JavaScript variable scope. There is a tonne of information available online on this subject, but I wanted to bring attention to it in the context of Tridion and Alchemy.

Continue reading