Common Terms Used in Sitefinity, and What They Mean

In every software platform you’ll find special terms. Some are well-recognized – for instance, “App” or “Download”.

Other have varying definitions depending on the system or industry. You’ll find some used in Sitefinity’s administrative backend. Some of these terms are commonly understood; some are not.

Today I’d like to explain the terms Sitefinity uses. Cover the definitions we as web developers use day to day.

Inspiration for this post came when we spoke to a new web development customer a few weeks ago. We were about 20 minutes into our meeting. I was describing Sitefinity’s capabilities when they stopped me and asked, “What’s a module?”

Hit me right away. They hadn’t encountered the term before, and I hadn’t explained it before using it. Of course I explained what a module was, and how it’s used in Sitefinity. They understood and we moved along.

But I made a mental note of that question. If one person didn’t understand what a Sitefinity Module is, there are others who don’t as well. This post aims to fix that.
2015-05-08_11-00-18

Definitions for Terms Used in Sitefinity CMS

Content
The word “content” is both universal and confusing. Why? Because it has multiple definitions, depending on who you ask. Some people consider only the text on a website as content. Others lump images & videos in as content too. Still others will define whole Web properties as “content”.

Sitefinity takes an overarching approach to content. I would define “Content” as, “The unique elements on your website which speak to your customers’ needs.”

This includes text (both on a single webpage and shared throughout the website), images, videos, documents, files, categories and tags.

Content Block
Last August, in the post How to Update Your Site Using the Sitefinity Desktop App, I defined a Content Block as:
“…A piece of content which you can add to multiple pages, news items, wherever the content serves your readers’ needs. Most often our customers will use them to create a piece of content, and then share that content across several pages.”

This most often is done with text – a testimonial, an ad. However content blocks can easily contain images, file download links, even videos.

News Item
A News Item is an individual news post. An announcement, a press release, etc. They’re organized in their own Library (see below for the Library definition) so you can quickly disperse them throughout the website. News Items may need to appear on the homepage, the News page, and other places. It’s much easier to control when & where news shows up this way.

Plus it’s easy to categorize & tag (again, see below) news items if they’re in their own Library.

Template
A template is a collection of layout elements. It contains the structure of a webpage’s look and feel. In Sitefinity, you apply a template to a page after it’s been created. It then takes on the structure and characteristics you want to see. Content is entered after you set the page’s template. Templates are also used on widgets.

Widget
A “widget” in Sitefinity displays content on a webpage. Telerik labels them like this: “Anything you want your page to do, you must do it with a widget.

Widgets are placed on the page while editing, and configured to display certain content. Sitefinity comes with several widgets built-in, like the Image Gallery and Video Gallery widgets.

More on Widgets at Sitefinity Documentation.

Module
The term “module” is central to much of Sitefinity’s administration. It’s a backend component in the CMS, from which users can create or modify certain types of content. There are two types of modules: built-in modules (those created by Telerik & installed by default in Sitefinity), and custom modules (modules you create using the Module Builder).

Built-in modules include Events, Forms, Lists, and Blogs.

We often create custom modules, or modify built-in modules, to meet our customers’ unique needs. For example, we modified the Events module to act as a registration tool for training classes.

More on Modules at Sitefinity Documentation.

Library
In Sitefinity, a Library is an organizational grouping in the CMS. Libraries exist by default for Images, Videos and Documents & Files. These are defaults only; you can create sub-libraries within them to organize your files (in fact we recommend all customers do this!).

Tag
Here’s a term with lots of definitions! Most of us may think of a tag in relation to a blog or social media – “this post was tagged as ‘headphones’ ” on a blog, or “#WowWhatanIdea” on Twitter.

In Sitefinity, tags aren’t just used for tagging blog posts (though you do have that option as well). You can also use tags to organize images, documents & other Libraries. We’ve used tags to sort which news items were displayed on a homepage too.

Category
In a blog, the Category is the organizational element used to group similar posts. The category name itself is often a keyword, usable for search.

In Sitefinity, a Category is used much the same way – but more broadly. Categories can sort blog posts, pages, search results & content blocks.

Categories and Tags work well together. Use a couple Categories to organize groups of content, then identify different content elements within those categories using Tags.

Classifications
Sitefinity uses Classifications to organize content items. A Tag is considered a Classification. So is a Category.

There are two main types of Classifications: Hierarchical (multiple levels of grouping) and Simple (one flat grouping level). Tags are Simple Classifications; Categories are Hierarchical.

You can also create custom Classifications within Sitefinity. They’re great for populating drop-down lists, organizing blogs…however you want your content presented to readers.

Bookmark This Post for Future Sitefinity Reference

There’s our list of definitions! Hope this proves a useful reference for all Sitefinity users and those interested in moving their sites to Sitefinity.

Have you run across a term in your CMS (Sitefinity or otherwise) which wasn’t well-defined? Please comment or email with the term. Let’s see what we can discover.

Sitefinity 8.0 is Here – New Features to Expect

On March 25, Telerik announced the Version 8.0 Release of Sitefinity CMS.

marketing-dashboardTelerikDECImage courtesy of Telerik.com

You can see the overview page at: http://www.sitefinity.com/product/see-also/what%27s-new

What does Sitefinity 8.0 have to offer that’s new & improved? Well, that’s why we’re here.

Many of its improvements are developer-focused. Meaning that the new/updated tools help a web developer build a Sitefinity website more efficiently. Which translates into a faster development schedule & better costs for you.

The rest are features useful to business users & managers. Let’s review those right now.

Digital Experience Cloud

Billed as a “marketing command center,” the Digital Experience Cloud helps you understand & optimize customers’ journeys through your websites. It supplies you with data on each customer’s activity, and connects it to marketing goals you set (e.g., funneling leads into a sales pipeline).

Using this “digital marketing platform” you can personalize the customer’s journey and measure the results of your marketing work.

We’ll bring you more details about the Digital Experience Cloud in a future post.

Pages Precompilation Tool

This tool enables precompilation of Sitefinity pages before deploying a site to production (what we call “go live”). It was introduced in Sitefinity 7.3 and updated in 8.0.

What this “precompilation” means is that loading webpages puts less stress on the server’s CPU. It also skips a “warm-up phase” when going live. Essentially it’s a timesaver for you and stress relief for your web server.

Improvements to Multisite

A “Multisite” is an instance of Sitefinity CMS which contains multiple inter-related websites. I mentioned one of our clients’ multisites in the “How to Implement Silo Search” post.

8.0 adds some improvements to Multisite:

  • Applying different taxonomies (Categories, Tags, and so on) per site
  • Selecting the site and language when creating a workflow
  • More functionality added to Site Sync (perform Site Sync for selected sites’ content only)

New/Enhanced Widgets

With nearly every release, Telerik adds more widgets (or more functionality to existing widgets). 8.0 is no different.

Social Share – Drop it on a page & choose which social media network it will display: Facebook, Twitter, LinkedIn, Tumblr, StumbleUpon, and more.

Login/Logout Button – Gives users the ability to login/logout. When logged in, information about their account is displayed (first & last name, avatar icon).

Registration, Profile, Account Activation – Together, these three widgets enable the setup of a members-only section on a website. You have the ability to register an account, create a profile, and activate the account via confirmation email.

The Enhancements lists is much longer. Here are the major changes:

  1. Content Block widget – Improvements to the Image & Hyperlink Managers.
  2. Navigation widget – External URLs in the navigation? Handy!
  3. News widget – More sorting options to organize your news announcements.
  4. Page selector – Now the Page selector will indicate page status by label (is the page unpublished or a draft?).
  5. Libraries (Images, Documents & Files, Videos) – Fixes for inability to delete a Library from its Edit Properties menu, and to relocate a Library even if it’s been relocated once before.
  6. Fixes for Pages, Media, Multisite, Dynamic Content, Events and Page Templates

What All These Updates Mean for Businesses

From our experience, Telerik has a two-tier upgrade schedule for Sitefinity CMS.

  • Incremental Updates (7.1, 7.2, 7.3…) add fixes and minor performance tweaks. Might add a new feature for developer use.
  • New Versions (6.0, 7.0, 8.0…) make major changes to the CMS’ structure and capabilities.

8.0 is definitely a major change to Sitefinity. It gives businesses whole new ways to create experiences for their customers, and to incorporate their responses into ever-sharper marketing campaigns.

We have just started our first Sitefinity 8.0 project. We’ll be sure to report on anything we come across that can help our Sitefinity customers leverage their website investments.

If you’re interested in trying out 8.0 yourself, here’s a demo link: http://www.sitefinity.com/try-now/sign-up-for-demo

More questions? Please leave a comment or email us at this link.

How to Import Content from Word to Sitefinity (Without Issues)

How should you upload content into Sitefinity?

Well, you can type it directly onto a page (or in a content block).
You can copy/paste plain text in, and then dress it up with HTML commands.
Or you can copy/paste text in from Word.

The last one is pretty common.  Word is, after all, extremely common in offices.
However, importing content from Word directly into Sitefinity—especially with older versions of Sitefinity—is not the best idea.

Why not?

Because with versions before 7.x, your pasted content will look exactly like it does in Word.

Which means whatever styling, fonts, colors, etc. your website has…they won’t show up. It will look like you dropped a Word document right in the middle of your site. Chunky text, the wrong colors, and so on. Your content becomes an eyesore.

Why This Happens: Word Formatting Sneaks into the Copy/Paste

Word uses its own formatting language “behind the scenes.” It’s based on the XML standard, and it applies whenever you select a Style from the Ribbon. “Normal”, for instance, often defaults to Calibri font, Size 11 text, Black color.

When you paste text from Word into another application—like Sitefinity’s Editor—this formatting comes with it.

See, Sitefinity tries to style content you enter according to one of two standards:

  1. CSS, the overall styling of the website.
  2. The formatting elements you enter in the Editor.

Formatting elements will typically override the website’s CSS. But this isn’t always a good thing. Styling is there for a reason: to make the overall site look consistent. If you break it with carried-over Word formatting, your site becomes less effective. (And ugly.)

What do we do? Best practice is to only upload clean text into Sitefinity. So we need some ways to clean your Word-formatted text, don’t we?

2 Ways to Import Clean Text from Word into Sitefinity

A. There is a “Strip Word Formatting” option in Sitefinity 7.x. You find it by opening the Page Editor.
Click the “More Formatting Options” button (top right). Locate the Format Stripper. It looks like this:

Strip Word Formatting

Click the arrow next to it, and select “Strip Word Formatting.”

This should clean out Word’s sneaky in-the-background formatting. However, it doesn’t always work perfectly. That’s not really Sitefinity’s fault; there’s just so much it can strip out before it finishes pasting.

If you still see Word-style formatting imposing itself on your content, switch to HTML Mode in the Editor and remove the unwelcome code. (Fair warning, there might be a LOT of it!)

B. You can also strip the Word formatting before you paste any content into Sitefinity. (This is what I do.)

You have two methods for accomplishing this:
–Paste into the HTML Mode window in Sitefinity’s Page Editor, or
–Use a stripping utility.

What I do is use a stripping utility – Notepad++. Pasting any Word text into a basic notepad utility, like Windows Notepad or Notepad++, automatically removes all formatting elements. You’re left with plain text. Which you can then paste into the Page Editor.

The same thing happens when you paste directly into the HTML Mode window in Sitefinity. Just plain text, nice and clean.

I take the extra step of pasting into Notepad++ because it lets me see if there’s any weird spacing or unnecessary symbols before I switch to Sitefinity. Plus I can enter HTML code around the text if I want to test out how the HTML will look.

Telerik has also provided a stripping utility. It’s on their Demos site:
Cleaning Word Formatting in WYSIWYG Editor for ASP.NET – TelerikUI

It gives you two windows: one for automatically stripping out Word formatting, the other for doing so manually. This has the added bonus of seeing what your content will look like in the Page Editor, without opening the Page Editor. Useful for testing HTML or playing with CSS styling before you upload anything to your site.

Cleaning Text is an Extra Step, But It Winds up Saving You Time

When building (or rebuilding) a website, you’ll need a lot of time to populate the content. Battling with leftover formatting can drain away hours…hours you really can’t afford to lose during population.

Stripping out Word formatting before you upload content into Sitefinity may be an extra step. But trust me, it won’t take nearly as much time as skipping it would!

Do your Sitefinity friends a favor. Forward this post to them before they start building their next website. It will save them time!

How to Implement Silo Search in Sitefinity CMS – and How it Makes Everyone’s Site Visit Easier

A healthcare customer of ours (we’ll call them X Pharma) runs half a dozen websites for all of its products & services. They asked for help rebuilding all the sites in a single Sitefinity CMS – what’s called a “multi-site instance.” (Yes, Sitefinity can run multiple websites all at once—from the same interface!)

We got to work. But while we were busy rebuilding sites, X Pharma had an additional request. Could we put silo search in too?

What is Silo Search?

2015-02-17_12-27-16In terms of content and websites, a “silo” is a collection of content dedicated to a specific purpose. Think of a silo like a grain storage tower (which is where the term ‘silo’ comes from). In one tower you have corn, another you have wheat, etc.

When you perform a search on a website, the results normally come from all its sections: pages, blog posts, news items, and so on.

Silo Search narrows the focus. When you a Silo Search, you see results only from the specific silo container – designated groups of content from 1 website, in this case.

Why did X Pharma want this? Because their visitors included both healthcare professionals and patients. Some of their websites contain content meant only for healthcare workers. Other content is meant for patients.

By putting their content in respective silos, they can prevent a patient from seeing information not intended for (and thus confusing) to them.

Silo Search is popular among many privacy-minded organizations for this reason. Other healthcare companies, local governments, businesses who must maintain confidential records for customers, etc.

The Challenge: Implement Silo Search for All 6 Sites Using Custom Code

Here’s where we hit the snag. See, Sitefinity’s normal Search function does separate its results out by site. If you do a search on Site1.com, it will show you results from Site1.com. Even if it’s running half a dozen other websites in the background.

But the Search function doesn’t have the ability to “silo” its results – it can’t limit its search to certain groups of pages within that one site. In other words, if it finds some relevant content in both the HealthCare Professionals section and the Patients section, it will display both results.

This is why X Pharma asked us for help. They didn’t want to confuse visitors with content not relevant to them. Not to mention potentially violating patients’ privacy!

We had to develop a custom method to make Silo Search work. Here’s how we did it.

Coding a Solution: Redirecting the Search Command

Here’s where it gets technical. I’ll explain the steps as clearly as possible.

In order to accomplish a Silo Search, first you need a silo. In Sitefinity, you do this by creating search indexes. An index here is much like one of Google or Bing’s search indexes – it’s a list of pages.

Now, we have to store the available content in the right index. Sitefinity would do a good job of creating indexes, but data privacy mandates that we develop the sharpest possible organization.

What we did was code some instructions for Sitefinity. Essentially we told it how to recognize where we want a page to go, based on certain criteria. For example, is the page a child of the Patients page group? The Healthcare Professionals page group? Or is it part of the mobile website section of pages?

Which index the page goes into is based 100% on that criteria. Then it’s able to return specific results for, say, the Healthcare Professionals silo.

Next we built a custom Page Inbound Pipe. This is an event handler for publishing events. It’s invoked when you create a new page in Sitefinity, or change an existing page.

Why customize a page pipe? It connects to the instructions from before. Customizing the page pipe allowed us to “pipe” pages into their proper indexes, based on the aforementioned criteria.

This new Page Inbound Pipe was configured to access the separated search indexes, using the instructions. Think of this like putting in a new pipe fitting under the sink. Instead of leading down to one big pipe, the new fitting splits water between two smaller pipes. Depending on where you tell it, water only flows into one of the pipes.

But in order to make the pipe fitting do that, it needs the instructions. This part has to be done by a developer, because it involves creating specific code & adding it into Sitefinity.

Our developer wrote a custom C# class which inherits the base class of the default Page Inbound Pipe into the custom Pipe. That means it can do anything the original Page Inbound Pipe can do. Then, he wrote in an override of the “PushData” method. This event is called whenever a publishing event occurs: Create a Page, Edit a Page, Search the site…

With this method in place, the custom Inbound Pipe can do something new: It scans the URL of the page from which the search was entered, and determines which criteria the page must be routed toward. When it knows that, it knows which index – which silo – it should place the page reference in.

Result: Silo Search Every Time a Patient or Healthcare Pro Accesses the Site

With this Silo Search function in place, X Pharma now knows their site visitors will see content relevant to them when they click that Search box.

This is what happens when they type in a search term and click “Search”:

  • Depending on which section of the site the user is on, the search form tells the server which index to return results from.
  • The user enters the search term they would like to search for.
  • Also depending on which section of the site they’re on, the page pipe routes the search query through the selected index. Are they on pages that have been indexed in the Healthcare Professionals section? Then the pipe returns results from the Healthcare Professionals index.
  • The same applies to the Patients, or Mobile sections of the website that have been added to the search silos.
  • If the search coming from a page not in the Healthcare Professionals or Patients sections? Then the pipe returns results from the default index for that site.

Boom, search results show up. Relevant to the search term and where the visitor is.

The process of a Silo Search working happens behind the scenes. Visitors don’t see any of this happening. But the results they get come back tailored to the kind of content they want to see.

Silo Search doesn’t have to be implemented to protect customer privacy. You can also use it to avoid confusing visitors with too many search results. Or use silos to restrict information behind a members’ section. And plenty more.

If you implemented Silo Search on your website, what would be its purpose? Leave a comment or email with your ideas! If you have questions about using Silo Search, please leave those too.

Sitefinity’s Built-In HTML5 Video Player: Play Your Business’ Video Files and YouTube Videos on Any Device

HTML5 is the latest version of the HTML language – the foundation of the Web. It’s designed to make websites and apps run smooth and clean on just about every platform out there: Windows, Mac, Linux, iOS, Android, etc.

One particular value to HTML5 is video rendering. In the past, video sites like YouTube used an extra piece of software called Flash to run their videos. (YouTube has recently added an HTML5 version of its player.)

What’s this have to do with Sitefinity? Well, the team at Telerik built something into the latest Sitefinity CMS: a dedicated HTML5 video player.

The Sitefinity 7.0 Video Player Basics

Officially, it’s called the “Telerik RadMedia Player”. You place it on a webpage by dragging & dropping the “Video” widget.

Video Widget – Telerik Documentation

Sitefinity has had this widget for a while. It’s only in Version 7.x that we’ve had the HTML5 version of the video player.

It supports playing the following video formats:

  • .WEBM
  • .OGV
  • .MP4

The .AVI and .MOV formats are not supported. Try to upload them and you’ll receive an error. If you do have AVI or MOV videos you want to use in your Sitefinity website, you can do one of two things. Convert the video file into .MP4 format using a software tool or web app, or upload the file to YouTube.

We’ve talked about embedding videos from YouTube on a webpage before. But this new video player gives us a better way.

An Alternative to YouTube Embedding

The new video player gives two major advantages over past versions:

1. Since it’s in HTML5, the load time is faster, and its display is cleaner.
2. The new player can play videos hosted within Sitefinity–and play videos directly off of YouTube!

Now we’re talking. This a big advantage over YouTube embedding – it means you have much finer control over how the video displays on your site.

The YouTube embedding code is helpful – lets you put videos just about anywhere. But it tends to break certain page layouts, especially on mobile devices. Then it just looks ugly.

HTML5 is specifically designed to avoid that. Using Sitefinity’s player, you control how big a video is, and how well it blends into a page.

So how do we use this fancy new HTML5 video player? If you’re running Sitefinity CMS 7.0 or higher, this is how.

Part 1: Upload a Video in Sitefinity, or to YouTube

Just as straightforward as it sounds. Either upload a video to your YouTube channel, or navigate to the “Videos” library under Sitefinity’s Content menu. Both locations make it easy to upload your video files. (Remember the format limitations listed above.)

Refer to these posts if you need any help:
http://sitefinityinsider.com/how-to-post-videos-to-your-sitefinity-website-part-1-of-2/
http://sitefinityinsider.com/post-videos-sitefinity-website-part-2-2/youtubevideowidget

Part 2: Insert the Video Widget

To post the video you’ve uploaded to a webpage:

  1. Open the webpage in Sitefinity for editing.
  2. Drag the “Video” control to the location you want it on the page.
  3. Click “Edit” to open the widget for editing.
  4. For videos uploaded into Sitefinity:
    • Click “Select Video”. Click the icon of the video you’ve just uploaded in the next window.
    • Click Done. You’ll see the video load in the original window.
    • Click Save.
  5. For videos uploaded to YouTube:
    • In the lower-right corner, click the “Advanced” button.
    • If you want to play a single YouTube video, in YouTubeVideoURL, enter the URL of the video.
    • If you want to play a YouTube playlist (yes, you can even load entire YouTube playlists!), in YouTubePlaylistID, enter the YouTube playlist ID.
    • Click Save.
  6. At the top of the page editor window, click Preview to test your video. (Videos will not load within the page editor – this is disabled, since it slows down the page.)

Part 3: Configure the Video Player Options

This part is optional. You do not have to configure the video; it will obey standards already set in place on your site. If you do want to exercise more control though, this is what you do.youtubevideowidget2

  1. Click “Edit” on the Video widget. Click the “Advanced” button again. The other fields you see? They control things…many things! Options like:
    • AutoPlay: If you want the video to play automatically when the page is loaded, change the value to “True”.
    • FullScreen: Loads the video in full-screen if set to “True”.
    • Height: Changes the video player’s default height.
    • Width: Changes the video player’s default width.
    • StartTime: Changes the start time at which the player starts playing. Value is in seconds, so you’d enter “10” to start at 10 seconds in.
    • StartVolume: Is your video too loud/too quiet? Change this number to change its starting volume (measured in percent, from 1 to 100).
    • EnableSocialShare: Displays social sharing buttons, to let visitors share your video on Facebook, Twitter, etc. True/False value. (If you want to configure which buttons show up, use this resource: Social Sharing.)
    • And more.
  2. Click Save.
  3. At the top of the page editor window, click Preview to test your video.

A demo video and features list for the HTML5 video player are located here:
Telerik RadMedia Player – Demo

All that capability, built into one widget in the Sitefinity CMS. Makes adding videos to pages both fast and flexible.

And since it uses HTML5, your videos show up the same on an iPhone as they would on your laptop.

What are your thoughts? Would you host videos directly on your site, if your site had a video player with all the power of YouTube – and more?

Moving a Site from WordPress into Sitefinity, Part 3: Database Transfer

Welcome back! This is Part 3 of our post series of moving a website out of WordPress and into Sitefinity CMS. In this post we’re covering Migration Method 2: Database Transfer.

MIGRATING A WEBSITE VIA DATABASE TRANSFER

WordPress stores just about everything in its database – blog posts, pages, etc. If your site uses ecommerce (you take product orders on it), then this method is preferable. Why? Because transferring the WordPress database into Sitefinity preserves the order records stored there.1401426_63285732

If your site does not use ecommerce (or uses a third-party platform), then we recommend using Method 1. DO NOT use both Methods at the same time; you run the risk of duplicating your content in Sitefinity. Which is messy and a pain to clean up.

WordPress uses the MySQL Database Server by default. Sitefinity’s default is Microsoft SQL Server. Even though these are different database servers, they both use SQL. Transferring the site’s content, is a matter of exporting the database from WordPress and importing it into Sitefinity.

One way to do this is via the SQL Server Migration Assistant (SSMA).

However, it’s not quite that simple. You must set up a new site instance in Sitefinity beforehand. You may need to use an API in order to arrange a clean import of the content. Some advice for that is in this Sitefinity forum thread.

And most importantly – have a professional database administrator do the transfer! We’re talking about critical data here. Consult a professional so your site comes out looking clean and complete.

MIGRATION ALTERNATIVE?

http://www.enterprisefinity.com/products/wordpress-migrator
This site claims to transfer WordPress sites whole-cloth into a Sitefinity CMS instance. I have no reason to doubt this, but I haven’t been able to verify their tool’s effectiveness. I present it here so you know of the option, but I can’t recommend it due to no personal experience.

After Migration, Clean Up

Now you’ve performed the migration, whichever method used. What’s next? Well, depending on how complex the site was before, you may have some clean-up work to do.

In Sitefinity’s Pages, Content items and Blogs, make sure you:

  • Have all the content you want (including images, video & downloadable files)
  • Have the page structure you want (may need to create this pre-migration)
  • All user accounts are in place & active
  • Have the templates properly configured

(Sorry, plugins & themes don’t translate. But Sitefinity has custom modules and themes available too.)

You may not need to do any clean-up – if so, congratulations, you had a perfect migration! For the rest of us, be prepared for a little tidying.

As I said before, migration’s not easy. But it’s a worthwhile effort, if your site needs more features and better security. You’ll be moving into a business-class CMS with slick features you can take advantage of as you grow.

Moving a Site from WordPress into Sitefinity, Part 2: The 3-Step Export

In this post we’re talking about one of 2 methods to migrate a website from WordPress to Sitefinity. This method is called “The 3-Step Export”.

WHAT’S INVOLVED IN THE 3-STEP EXPORT?

This method involves exporting content from the current WordPress site in 3 categories: Blog Posts, Pages and Users. Each of these contains data, which must be transferred from within WordPress to within Sitefinity.

Method 1 is more work than Method 2 (below), but since it is in 3 parts, it’s easier to verify that the content you want to preserve is preserved.

Step 1: Blog Posts – Use a blog export tool.

WordPress’ default publishing method is via blog posts. If your site runs in WordPress, odds are you have most of your content here.1065252_16172266

Thankfully, exporting content from a blog is relatively easy. We even have a couple export tools specifically intended for migrating posts into Sitefinity!

WordPressToSitefinity by timw255 – GitHub
OR
Importing WordPress Export files into Sitefinity CMS by Gabe Sumner – GitHub Gist

I do NOT suggest searching the WordPress Plugins database for an export tool, unless these two do not work. The WordPress plugins are mostly designed for exporting WordPress posts for transfer to another instance of WordPress. Not another CMS, like Sitefinity.

One potential snag here is that, since WordPress stores content as blog posts by default, you may end up with “everyday” content in a Sitefinity Blog instead of a Page.

To avoid this as much as possible, you may need a developer to modify the Sitefinity Blogs API. This way you can exclude as many “everyday” WordPress content items from Sitefinity’s Blogs import as possible.

Documentation for the Blogs API is here: http://www.telerik.com/help/sitefinity/developer-manual/generic-content-based-blogs-api-overview.html

Step 2: Pages – Export from WordPress, Import as Generic Content Blocks.

If you have content in WordPress pages, they will translate well to Content Blocks in Sitefinity. Think of Content Blocks like puzzle pieces in this case. With a little management, you can “assemble” content blocks into new webpages within Sitefinity.

The management however, may be a bit tricky. If the pages contain code influenced by WordPress, that has to be stripped out or it’ll make the new Sitefinity Pages look wacky. You can automate the code stripping using Sitefinity’s Generic Content API though.

Step 3: Users – Export as CSV, use a custom tool to build new users in Sitefinity.

WordPress Users are the system’s user accounts. If you only have a few Users, this step is not necessary. You can just re-create those user accounts in Sitefinity.

If you have a lot of WordPress users though, it may save you time to export them all at once and import them into Sitefinity.

In this case I will break with previous steps. There is a WordPress plugin which exports users: Export Users to CSV. I tested it on this very blog; it exported the users perfectly.

Once you have the Users list in .CSV, how do you get it into Sitefinity? According to this forum thread, you have two possible methods:

  • Create a custom membership provider, and use the users from the other system
  • Use the API to create the users in Sitefinity

Links to perform these tasks are included in the thread.

You’ll notice that each of these steps involves input from a web developer, at some point. That’s because a web developer will save you time during the migration. You could do most of this yourself, sure. But it’s not recommended; you don’t want to run the risk of pressing the wrong button and wiping out all the work you did!

Come back next week for Migration Method 2: Database Transfer. Easier in some ways, but it has its own potential for issues. Join us & find out what’s involved.

Moving a Site from WordPress into Sitefinity – Part 1 of 3

Migrating a website is never a small task.

But there does come a time when you must migrate a website from one platform to another. Oftentimes when we’re asked about this, it’s for one of two reasons:

  1. The site owners used a small “free” website builder, and now the site’s outgrown it.
  2. The site’s been hacked or is under attack, and the site owner needs better security.

For this article we’ll discuss migrating into Sitefinity CMS from WordPress. Right now, WordPress is used on millions of sites the world over. It does have a lot going for it, in terms of cost (free) and options (thousands of plugins & themes).

However, WordPress has its own issues. It’s often a “starter” Content Management System (it was originally intended as a blogging platform, not a CMS), which people migrate out of as their online marketing needs grow.

Why Migration is Not Easy – And Why It’s Worthwhile

There are two difficulties when migrating a website:  migration1

One, the software used. For example, WordPress is written in PHP for a Linux platform. Sitefinity CMS is written in ASP.NET for a Windows platform. The difference means transferring information can result in trouble – incomplete data, errors if not done properly, etc.

Two, changes in presentation. Moving most content is easy; it’s text and images. Some elements of a website are harder to move – layout elements, custom programming and so on. Translating these from one platform to another almost always results in at least one snag.

Which means moving a site from WordPress to Sitefinity CMS is less of a migration, and more of a rebuild.

So why do this at all? Migration sounds like a giant pain, not worth the time.

Not so fast. There are several reasons why a migration is worthwhile, if you find yourself in a problematic situation.

  • In general, moving from a basic CMS to a stronger one gives more powerful security. If you’ve been hacked or are receiving hacking attempts, you’re going to need more security.
  • If a CMS is not able to provide a feature you need, you can try to create the feature with custom programming. Sometimes this just doesn’t work though–especially if the CMS is not designed to handle the feature (e.g. ecommerce).
  • Sitefinity is much better suited for business websites (it’s designed that way) than a blogging platform.
  • Creating custom modules & modifying the CMS means you get exactly the website (and management process) you want. Some smaller CMSes don’t even give you this option! All you get from them is a cookie-cutter site that looks just like a hundred others. Does anyone want that for their business?

If you’re interested in moving your website into Sitefinity CMS, there are two ways to do it.

Join us back here next week for Part 2 covering Method 1: The 3-Step Export.

Address Comments on Your Website with a Universal Comments Policy

Last post, I included this line when discussing how to create News items in Sitefinity CMS:

Universal News/Blog Post Comments Policy: Do not allow comments on any post unless you’re prepared to deal with them.

This is a one-sentence encapsulation of a big question: What do we do about comments on our website? That’s what today’s post will address.

Why You Must Address Comments

Comments became a popular feature with the rise of blogs. People could add their own thoughts to a blog post–joining the conversation with the author and other readers. This made the conversations very powerful…a power which continues to attract. We’ve gotten used to leaving comments whenever we agree/disagree/want to add/want to yell at/give links/ask for links.

In recent years, the ability to add comments has expanded beyond blog posts. Now you can comment on news articles, images, and even webpages themselves. Sitefinity, and many other Content Management Systems out there, allow readers to leave comments on every content block, News item, Blog Post, and a couple other places!

This is why you must address comments when making or adding to a website. With every piece of content, you must ask yourself: “Do we want comments on this?”

If You Can Dedicate Time to Comments, Allow Them. If Not, Don’t.

If you allow comments, you will need to dedicate someone’s time to two main comment duties:

  1. Managing comment spam
  2. Replying to legitimate comments

Comment spam is rampant among blogs. WordPress has an entire section of plugins<> dedicated to keeping spam comments off of websites. Sitefinity does not, but you can still manage comments from within the CMS.

In Sitefinity 6.x, comments are found attached to individual news & blog posts. From each item you can allow or disallow a spam comment. (Yes, that means page-by-page comment spam management.) Of course, you can disable comments on each item when you create it, just by unchecking the “Allow comments” box.

In Sitefinity 7.x, comments have their own management page: Under “Content” in the Dashboard, look under the Discussions header for Comments.

commentsmenu

You receive email notices when new comments are posted. If spam is rampant, these can fill your inbox. Which is why having one place to get rid of spam comments en masse is a welcome addition to Sitefinity!

(It is also possible to use the Akismet anti-spam service to automatically filter out spam comments.)

Dealing with spam comments shouldn’t take much time. Replying to legitimate comments however, might. People will ask questions. Challenge your positions. Give you links which may extend the topic of discussion. And so on.

(Most) Legitimate comments deserve a response. From a live person. Actually addressing their question/commentary. This takes time to do. Time out of a worker’s day.

If you’re prepared to have employees take time out of their day to respond to comments, then allow them. If you can’t spare anyone for more than a moment, then turn comments off.

Advantage of Disabling Comments: No spam to deal with, no time spent on responses.
Disadvantage of Disabling Comments: No interaction with readers. Readers cannot respond on topics they enjoy or want to learn more about.

How to Enable/Disable Comments in Sitefinity CMS

The best practice when it comes to comments is: Allow them on News items and blog posts, but don’t allow them on content blocks/parts of webpages. This restricts the conversation to places where readers are most likely to post constructive comments. Which also minimizes the time needed for writing responses.

How do you disable comments in Sitefinity? It’s very simple. Here’s how.

Click “News” in the Content menu. Click to select any news item (or create a new one).
Toward the bottom of the News Item window, under “More options” you’ll see the Allow Comments checkbox. I’ve highlighted it below.

(The screenshot comes from Sitefinity 7.0, but the location is the same in 6.x-based websites.)

commentsoption

Once you save the post, comments are either enabled (if you checked the box) or disabled (if you didn’t). This method works the same for creating a News item, blog post, or content block.

What Will Your Comment Policy Be?

We have one Web Development client who disables comments for News items, but allows them for blog posts. Another client who does the opposite. A third client who disables comments all across their site. And so on.

Where you allow comments on your website is up to you. Try the Universal Comments Policy out – if you can spare the time to allow & respond to readers’ comments, it can benefit you in many ways. If not, make sure to uncheck that box!

How to Update Your Site Using the Sitefinity Desktop App

It might seem odd for a web-based Content Management System to have a desktop application. But Sitefinity does, and there’s nothing odd about how well it works.

The Sitefinity Desktop App is meant for managing your website(s) from the desktop, instead of logging into the CMS in a web browser. Let’s take a run-through on using this app.

Why have a Desktop App for Updating a CMS?

Most updates made to a website should be done within the CMS itself. A desktop app just can’t reproduce those 100%. Desktop apps make handy add-ons though, for two reasons:

  1. A tool to have on hand if you aren’t able to login via the Web browser for some reason.
  2. Making updates offline for later upload.

Maybe you’re traveling where there’s no Wi-Fi. Or you’re at home, and you don’t have remote access there. But an idea struck and you need to make an update to the site! That’s when a desktop app is useful.

What can the Sitefinity Desktop App do?

According to Sitefinity’s Digital Asset Management page, the Desktop App can:

  • Create new content blocks, news items, blog posts
  • Manage image, document & video libraries
  • Facilitate live Document editing
  • You can even manage multiple sites right from here!

One notable exception, though: No Page Editing. If you want to edit/update live pages, you’ll still need to log into the CMS via a browser.

This does make sense; you need the RAD Editor to update a page. Running the RAD editor through a desktop app would probably mangle its usability! (Though I’m willing to bet Telerik is working on this for a future version.)

Logging into the Desktop App

I’ve tested the Desktop App for this post. I started by downloading the setup file & installing it. After the install completed, I was prompted to login to a Sitefinity website. Since this was a test, I chose one of our client websites to which I do not have administrative access.

I tried to use “Website Login”, but I received an error:
“Unable to Connect. Please make sure you have connection to the site and the Sitefinity DAM Module is active there.”

(DAM module is part of SF 6.1: http://www.sitefinity.com/blogs/eric-odell-s-blog/2013/07/18/sitefinity-update-introduces-dam-geolocation-api-and-touch-friendly-mobile-navigation )

Ah ha! I tried to connect to a pre-6.1 version of the CMS! I switched to a more recent website & used that site’s login & password. Poof! Instant connection.

Here’s what the Desktop App looks like upon opening:

desktopapp1a

The Dashboard defaults to showing recently-updated items on the site. These are limited to the items you can modify with the Desktop App though – Content Blocks, Blog Posts and News Items. You’ll also find links to Sitefinity resources and documentation, in case you need to look something up before making updates.

Let’s make some updates.

createnew1a

From the “Create New” window we can add content to a website’s blog, news, document libraries and available content blocks. In fact, let’s start with the last one, Content Blocks.

Creating a Content Block

In Sitefinity CMS, a Content Block is a piece of content which you can add to multiple pages, news items, wherever the content serves your readers’ needs. Most often our clients will use them to create a piece of content, and then share that content across several pages.

testcontentblock1a

I see in the Desktop App that editing functionality is on-par with Microsoft Word (the toolbar across the top). It’s missing a couple HTML functions–the functions you’d expect from the RAD Editor within the CMS. That’s okay; you still have plenty of tools to work with right here. I can even assign categories and tags before publishing the content block straight to the site (or saving locally for further editing).

Creating a Blog Post

Creating a blog post from the Sitefinity Desktop App looks & works almost identically to the Content Block. With two exceptions: Fields for selecting which blog you want to update, and a URL field to customize the blog post’s URL.

testblogpost1a

Creating News Items

The Create: News window appears the most similar to direct CMS editing so far. It includes fields for the Title and Content, as well as a Summary, an Author field, and fields for the news source name & URL. It also includes a checkbox for allowing/disallowing comments.

testnewsitem1a

*Universal News/Blog Post Comments Policy: Do not allow comments on any post unless you’re prepared to deal with them. More on this in a future post.

Editing Documents in the Libraries

This particular client stores most of their downloadable data in PDF. Which, as you’d expect, the Sitefinity Desktop App can’t edit directly. However you can edit its Title, Tags, Categories and other document properties. This is what it looks like down the side.

editdoc1a

Conclusion: Useful for Making Small/Offline Updates

The Sitefinity Desktop App serves best as a content updating method, not as a content creation method. I’d use it as a backup management tool, available when you’re offline or don’t have to make a big website update.

You can’t do everything with the Desktop App…but you can do quite a bit. I’ll keep mine around for making client site updates in the future.

Does your website run on Sitefinity CMS 6.1 or newer? Download the Sitefinity Desktop App here.