This article was updated on 2014.5.16 to cover how to set the profile for Sitecore 7.
While doing research for another article I came across an article on Stack Overflow asking about Rich Text Editor Profiles. The author noted that nothing had been written on the topic so I thought I might go ahead and fill in the blank. So to start from the top for anyone new to Sitecore, when you're creating fields on a template you select a Rich Text Editor as a field type. This will allow content editors to use the Telerik wysiwyg editor when they click to edit that field. If you use the stock Rich Text Editor field you'll notice that there are very few buttons to use and might wonder why it's so very bare. Sitecore does provide for a more robust toolbar but this is just one of may settings that you will have to configure to get the most use out of it. Let's walk through how you might go about doing that.
So if you've worked with Sitecore for any length of time you've probably created your own data packages to move to a remote server or installed a module from Sitecore shared source. You may have wondered what you were installing out of curiosity or fear of blowing up your installation. It's also good to know all the files created or items that you'll need to publish. One way to go about inspecting a package is to open it first in the package designer. First open the package designer:
When it comes to working with .NET on the web you have a lot of flexibility on how you approach a project. One particular aspect which seems to be a constant point of contention is the differences between Visual Studio's Website (WS) and Visual Studio's Web Application project (WAP). I had to work with both and over a long time and lot of arguments I learned quite a bit about the differences. Almost anyone who has written an article about this will tell you that you can accomplish pretty much any task with either approach and that choosing one over the other really comes down to your preference and situation. I started working on the WS model and have found that it is suitable for some tasks but the longer I develop the more I find myself using the WAP model because the environment and tools it offers tends to help me accomplish my goals faster and with more precision. It should also be noted that both project types are still reliant on IIS and the model type you choose really only changes the way you work with the project, not how IIS views the files. It's more a difference in the paradigm the two offer.
While developing with Sitecore you'll probably end up using XPath query to return some results. Since a lot of people will be requiring you to create content items with dashes in the name, for SEO purposes, you're going to need to escape the dashes with "#" (pound) signs as detailed in this SDN Sitecore Query Syntax article. This means you'll need a method to clean your XPath queries. Having done this a few times and integrated mine with other developers versions, here's what I've come up with:
If you've ever done a lot of Sitecore development you may have built a lot of tools only to find out that Sitecore itself has a utility that already does what you wanted. After a friend, Mark Ursino, joked about how ridiculous the Sitecore.MainUtil.True() method was I looked around and remarked how many times I bumped into a new found util class. I then asked myself just how many util classes Sitecore had so I popped open the object browser and did a quick search. The number: a staggering 31 utility classes. That's a ton of good code that you don't have to write. Some real nuggets too like the reflector utility. Here's what I found with some method highlights:
updated on 8/11/2011 regarding the order of the tabs. specifically to the position of the content tab .
So during the course of developing websites for Sitecore there are a lot of opportunities to create custom functionality. One feature that I like to use is a custom editor tab. If you're unfamiliar with the concept then you've seen them and just didn't notice. If you have a media folder selected you'll see options to "upload" or "upload advanced".
So during a project where I was converting a site to new templates for a rebuild, I was automating the creation of the new items and needed to know if the current page had any layout overrides on the item. It was necessary for me to compare each page's layout definition against the layout definition assigned to its standard value. If you've never ventured into the standard fields let alone the raw values of an item you might find this useful. The layout fields are stored as xml and keep references to all devices, sublayouts and layouts assigned to it. I ended up writing a few classes that handles the comparisons. It's not something that's entirely common but occassionally you need to know how to deal with the layouts programmatically. Hopefully someone else will find it useful too.
Recently I was required to take over the hosting of our SVN server and had the opportunity to take the existing system, which was a good base, and rebuild some parts of the it to meet some of our evolving business needs. I spent a lot of time reading about all the features of SVN and other version control systems as well as testing and redesigning it until I found the right balance of structure and security. I hope that what I learned as a result will help you as a web developer know what you can do with your repository and hopefully take some of the strain out of managing your environment. I do know there are a lot of other versioning systems out there and I'm not going to go into which you should use over another here. If that's what you're looking for you can read up here in an article written by Smashing Magazine. It's also worth noting that different programming languages have far different paradigms for code structure and this article may completely miss the point for you. I'm working in a .NET Web Application environment so bear that in mind.
If you're a Sitecore developer and you love working on the platform but don't have the money to buy a personal license for your own site, you should check out Sitecore Express. Sitecore released a version of Sitecore 6.0 that directly marketed toward developers for non-commercial use. You'll need to login with your SDN credentials and you'll be mailed an express license. The license runs for a year but as long as you're still a registered developer you can continue to renew it. The system runs directly off the master database which for me is fine. It also mean you can't publish and you won't be using workflow but you still get the content management and template definition. It is a 6.0 version so there are a lot of new features you're not going to get access to but it's a great tool and it'll allow you to use all that high powered code you've been developing between projects.
Sitecore is an incredibly good platform that provides a lot of functionality out of the box, but one of the great things about Sitecore is that if there is something custom that you'd like to add in, there's always a way to do it. I'm going to walk through the process of adding a custom piece of functionality to Sitecore's Rich Text Editor. There are a lot of reasons you would want to do this but for the sake of this example we'll build a simple text insertion demo that you can expand upon.