Blog

Gavin Pickin

December 21, 2016

Spread the word


Share your thoughts

As we continue with our 12 Tips of (ContentBox) Christmas, we at Ortus Solutions are giving you a gift of developer productivity, we will share a few tips and tricks that will keep giving all year around. Brad Wood is also doing 12 Tips of (CommandBox) Christmas.

ContentBox is a CMS built by developers, for our own use. We obviously try and cater to the usual CMS functionality features, but being developers, we tried to throw a couple of extra goodies into ContentBox. Today we'll look at a behind the scene function that allows you to output variables directly in your page or blog.

As you can imagine, there are a lot of widgets you can use in ContentBox. Most widgets have specific and larger functionality… sometimes you might want something quick and simple… like outputting a single variable. You can output any RC or PRC variable with a simple helper function.

This will allow you to easily output from any of these sources using an easy to use markup.

${rc:name}

This will output the `name` variable from the rc scope.

The underlying framework (ColdBox) will merge the incoming URL/FORM/REMOTE variables into a single structure called the request collection structure that will live inside the request context object. We also internally create a second collection called the private request collection that is useful to store data and objects that have no outside effect.

This means you can output URL variables in your content. Look at this example, with the following url
mydomain.com/?name=Gavin Pickin

You could access the name with ${rc:name}

You can tap into more items in the RC and PRC scopes as well, but you have to remember, you cannot output a struct to the page, only strings.
Also, you are restricted to the RC and PRC scope.

This gives you some nice options for form submissions, searches, and ways to add more information to a normal pages if you write your own modules.

Settings

Any setting stored in ContentBox can be output using the following markup: ${setting_name}. This is a great way to create site-wide static settings that can be output in any editor.

Lesson learned about Escaping this syntax.

After publishing this post, I realized the syntax would actually look for those variables, and show an error message if they didn't exist, so I had to come back and wrap them with <escape> tags, to have them not actually be rendered. Good lesson to be learned there.

Add Your Comment

Recent Entries

BoxLang v1.9.0 : Production-Ready Stability, Enhanced Lifecycle Management, and Rock-Solid Reliability

BoxLang v1.9.0 : Production-Ready Stability, Enhanced Lifecycle Management, and Rock-Solid Reliability

Happy New Year! The BoxLang team is excited to announce BoxLang 1.9.0, a significant stability and compatibility release focused on production-readiness thanks to our client migrations and new application deployments. This release also introduces array-based form field parsing conventions, enhanced datasource lifecycle management, improved context handling, and resolves over 50 critical bugs to ensure enterprise-grade reliability for mission-critical applications.

Luis Majano
Luis Majano
January 09, 2026
DocBox v5 - Reborn: Modern API Docs for BoxLang & CFML

DocBox v5 - Reborn: Modern API Docs for BoxLang & CFML

Welcome to DocBox v5! We didn't just update DocBox. We rebuilt it from the ground up.

DocBox v5.0.0 represents a complete architectural rewrite—modern syntax, blazing performance, and a stunning new look that finally brings API documentation into 2025. Gone are the clunky HTML pages of yesteryear. Say hello to a gorgeous, theme-driven single-page application that makes browsing your API docs feel like using a premium developer tool. We have also released a dedicated module for BoxLang: BX-DOCBOX. A fully interactive CLI tool for generating your docs from the command line using pure BoxLang.

Luis Majano
Luis Majano
January 06, 2026