Sie sind auf Seite 1von 247

USER MANUAL

1. Welcome to Sitefinity ............................................................................................................................ 6


2. About this Manual .................................................................................................................................. 7
Purpose............................................................................................................................................................................. 7
Intended Readership ................................................................................................................................................. 8
License Agreement ..................................................................................................................................................... 9
3. Basic Features and Concepts .......................................................................................................... 14
4. Login ......................................................................................................................................................... 21
5. The Sitefinity Workspace ................................................................................................................. 22
My Preferences .......................................................................................................................................................... 23
General Settings ................................................................................................................................................... 23
Dashboard Settings ............................................................................................................................................ 25
Page Editor Settings .......................................................................................................................................... 27
My Profile ..................................................................................................................................................................... 28
6. Working with Page Templates ....................................................................................................... 30
Master Pages and Templates Overview ....................................................................................................... 30
Setting Template Properties .............................................................................................................................. 32
Editing a Template .................................................................................................................................................. 32
Templates Versioning ............................................................................................................................................ 33
Duplicating a Template ......................................................................................................................................... 34
Deleting a Template ................................................................................................................................................ 34
7. Working with Web Pages ................................................................................................................. 35
Creating a New Page ............................................................................................................................................... 35
Adding an External Page ...................................................................................................................................... 37
Setting Page Permissions ..................................................................................................................................... 40
All Pages Grid View ................................................................................................................................................. 41
Editing Page Properties ........................................................................................................................................ 42
Edit Page Mode .......................................................................................................................................................... 42
Setting the Default Page ........................................................................................................................................ 43
Reordering Pages ..................................................................................................................................................... 44
Moving Pages ........................................................................................................................................................ 44
Ordering Pages ..................................................................................................................................................... 45
Duplicating a Page ................................................................................................................................................... 45

1
USER MANUAL

Page Workflow .......................................................................................................................................................... 46


Page Localization...................................................................................................................................................... 49
8. Working with Controls ...................................................................................................................... 53
Adding Controls ........................................................................................................................................................ 53
Deleting Controls...................................................................................................................................................... 54
Setting Control Properties ................................................................................................................................... 54
9. Working with Modules ...................................................................................................................... 57
ContentView Controls ............................................................................................................................................ 58
Generic Content......................................................................................................................................................... 60
Content Sharing and Branching .................................................................................................................. 60
Administrative End ............................................................................................................................................ 61
Localization............................................................................................................................................................ 67
Public End .................................................................................................................................................................... 68
News ............................................................................................................................................................................... 73
Administrative End ............................................................................................................................................ 73
Localization............................................................................................................................................................ 76
Public End ............................................................................................................................................................... 79
Blogs................................................................................................................................................................................ 80
Administrative End ............................................................................................................................................ 80
Localization............................................................................................................................................................ 83
Public End ............................................................................................................................................................... 84
Lists ................................................................................................................................................................................. 85
Administrative End ............................................................................................................................................ 86
Public End ............................................................................................................................................................... 90
Polls ................................................................................................................................................................................. 92
Administrative End ............................................................................................................................................ 92
Public End ............................................................................................................................................................... 94
Forums........................................................................................................................................................................... 96
Administrative End ............................................................................................................................................ 96
Public End ............................................................................................................................................................ 102
Images & Documents........................................................................................................................................... 103
Administrative End ......................................................................................................................................... 104
Public End ............................................................................................................................................................ 115
Events .......................................................................................................................................................................... 116

2
USER MANUAL

Administrative end ......................................................................................................................................... 117


Localization......................................................................................................................................................... 119
Public end ............................................................................................................................................................ 119
Newsletters .............................................................................................................................................................. 120
Administrative End ......................................................................................................................................... 120
Public End ............................................................................................................................................................ 126
Tags and Categories ............................................................................................................................................. 127
Tags ......................................................................................................................................................................... 127
Categories ............................................................................................................................................................ 132
Wiki .............................................................................................................................................................................. 136
Administrative Side ........................................................................................................................................ 136
Public Side ........................................................................................................................................................... 141
10. Services ............................................................................................................................................... 148
Search .......................................................................................................................................................................... 148
Administrative End ......................................................................................................................................... 149
Public End ............................................................................................................................................................ 151
RSS Feeds .................................................................................................................................................................. 153
Administrative End ......................................................................................................................................... 153
Public End ............................................................................................................................................................ 158
Tools............................................................................................................................................................................. 159
11. Users and Roles ............................................................................................................................... 159
Overview.................................................................................................................................................................... 159
Creating a User Account .................................................................................................................................... 161
Adding User Details.............................................................................................................................................. 163
Editing User Details ............................................................................................................................................. 165
Managing Users and Roles................................................................................................................................ 166
Deleting a User........................................................................................................................................................ 167
Changing Current User Details ....................................................................................................................... 168
Creating a Role........................................................................................................................................................ 170
Deleting a Role ........................................................................................................................................................ 171
12. Permissions ....................................................................................................................................... 172
Global Permissions ............................................................................................................................................... 173
Module Permissions ............................................................................................................................................ 175

3
USER MANUAL

Site Map Permissions .......................................................................................................................................... 177


Page Permissions .................................................................................................................................................. 179
13. File Manager ..................................................................................................................................... 181
Structure of a Sitefinity Site ............................................................................................................................. 182
How to Upload Files to the Server and Display Them to Users..................................................... 184
14. Caching................................................................................................................................................ 186
Page Caching ............................................................................................................................................................ 186
15. The Application Configuration .................................................................................................. 188
Overview.................................................................................................................................................................... 188
Configuring Localization - Overview........................................................................................................... 188
Site Localization ............................................................................................................................................... 188
Mapping Domain Name and Extension to Culture ......................................................................... 189
Module Localization ....................................................................................................................................... 191
Configuring Workflow and Versioning ...................................................................................................... 193
Page Level ............................................................................................................................................................ 193
Module Level ...................................................................................................................................................... 193
Page History ....................................................................................................................................................... 193
Module History.................................................................................................................................................. 194
URL Rewriting......................................................................................................................................................... 195
Setting Custom Error Pages in the Web.config ...................................................................................... 196
Search Input Validation ..................................................................................................................................... 198
Configuring Medium Trust ............................................................................................................................... 199
Extensionless URLs .............................................................................................................................................. 199
IIS 5.x ...................................................................................................................................................................... 199
IIS 6.x ...................................................................................................................................................................... 200
IIS 7.0 Classic Pipeline mode ..................................................................................................................... 201
IIS 7.0 Integrated Pipeline mode ............................................................................................................. 203
Wildcard Application Mappings............................................................................................................... 203
Configuring page extensions ........................................................................................................................... 207
Changing the default page extension..................................................................................................... 207
Using additional extensions for your Sitefinity pages .................................................................. 207
16. Deployment ....................................................................................................................................... 208
Deploying Sitefinity to a production server ............................................................................................ 208
Deploying Sitefinity in a Load Balanced Web Farm Environment .............................................. 211

4
USER MANUAL

17. Customizing Built-In Modules ................................................................................................... 212


Overview.................................................................................................................................................................... 212
Control Templates ................................................................................................................................................ 212
Adding Custom Fields ......................................................................................................................................... 214
Overview .............................................................................................................................................................. 214
Adding Custom Fields to Generic Content Based Modules ........................................................ 215
Adding Category Column ............................................................................................................................. 218
Using RadEditor as a Custom Field......................................................................................................... 219
Using a Drop Down List or a Checkbox as a Custom Field ......................................................... 222
Adding Thumbnails from Image and Documents Module to the News Module ................... 223
Adding Providers................................................................................................................................................... 225
Customizing the Generic Content Module ................................................................................................ 230
Adding and Removing Buttons ................................................................................................................. 230
Populating the CSS Dropdown .................................................................................................................. 230
Disabling the Sitefinity Link Manager and Using the RadEditor Link Manager .............. 233
Customizing the Images and Documents Module ................................................................................ 235
Amazon S3 Support ........................................................................................................................................ 235
Viddler Support ................................................................................................................................................ 237
Adding Custom Fields to the Images & Documents Module...................................................... 240
Customizing the Polls Module ........................................................................................................................ 244
Overview .............................................................................................................................................................. 244
Customizing the Response Chart ............................................................................................................. 244

5
USER MANUAL

1. Welcome to Sitefinity
Welcome to Sitefinity, Telerik’s powerful ASP.NET based Content Management System whose:

 simple-to-use graphical interface runs on any recent Web browser, allowing for intuitive
interaction with data.

 familiar editing environment enables non-technical contributors to author, maintain and


publish HTML content as easily as writing a document. Using the familiar Word-like interface of
Telerik’s leading WYSIWYG RadEditor, authors can format text, build tables, create hyperlinks,
insert images, flash files, documents, etc.

 scalable architecture streamlines the implementation of design changes and reduces


deployment time.

 pluggable modules enhance Web site development and functionality. Users can conveniently
set up and manage blogs and polls, create and post news.

 flexibility and fully exposed API allows easy integration, customization and reuse of external
applications and modules.

 rich template library, compliant with XHTML and web accessibility standards, enables users to
build Web applications that comply with W3C requirements.

6
USER MANUAL

2. About this Manual


Purpose

This manual is designed to be a guide to the functionality of Sitefinity CMS and to give a firm
understanding of its principles. It is divided into the following main sections:

Basic Features and Concepts


Login
The Sitefinity Workspace
Working with Web Site Projects
Working with Page Templates
Working with Page Themes
Working with Web Pages
Working with Controls
Working with Modules
Services
Users and Roles
Permissions

7
USER MANUAL

Intended Readership

The intended readers of this manual are:

 Web site administrators and users with basic programming knowledge responsible for the
installation and setup of new Web site projects, configuration and management of users, roles,
permissions and migration of Web site projects from development to production server.

 Web designers responsible for the graphic design, page layout and structure of the Web site
project.

 Web developers who will mainly use the default Sitefinity functionality.

A separate Developer Manual is available for advanced users.

For the latest Sitefinity documentation, please visit our documentation page.

8
USER MANUAL

License Agreement

Telerik Sitefinity Content Management System

End-User License Agreement

By downloading and installing the product identified above and/or its related materials, you are
accepting the following License Agreement. Check the box "I have read and agree to the License
Agreement" if you agree.

IMPORTANT – READ CAREFULLY: This license agreement (“LICENSE”) is a legal agreement between you
(either an individual or a single entity, also referred to as "LICENSEE", "YOU") and Telerik Corp.,
("Telerik"), for the product "Telerik Sitefinity" which includes computer software, associated media,
printed materials, and "online" or electronic documentation (collectively referred to as “SOFTWARE”).

By installing, copying, downloading, accessing, or otherwise using the SOFTWARE, you agree to be
bound by the terms of this LICENSE. If you do not agree to the terms of this LICENSE, do not buy, install
or use the SOFTWARE.
Any earlier LICENSE we may have granted to you for the use of earlier versions of the SOFTWARE is
replaced by this LICENSE.

DEFINITIONS

• CMS User/User seat - an individual user who has access to the administrative (content management)
capabilities of the SOFTWARE through a unique username and password.
• Site visitor - an individual who can access only the public (published) part of web-sites, created with
the SOFTWARE. Such users do not have username and password for access to the administrative
capabilities of the SOFTWARE. None of the Sitefinity LICENSES impose any limitation on the number of
Site visitors.
• Support Incident - A support incident is defined as a single support issue with the SOFTWARE and the
reasonable effort required for resolving it. A single support incident is a support problem, which cannot
be broken down into secondary issues. A single support incident may involve several e-mails and offline
work in order to be resolved. The Customer needs to provide Telerik with detailed information about
the problem encountered. Even though Telerik Support Engineers will make reasonable efforts to
resolve the issue, Telerik does not guarantee that all problems will be resolved. All bug reports and
product feature suggestions are not considered support incidents.
• Development Machine - a computer used for custom development, staging, or testing of the
SOFTWARE, before it is deployed on the Production Server.
• Production Server – a computer used for the final deployment of the SOFTWARE.

SOFTWARE PRODUCT LICENSE

The SOFTWARE is protected by copyright laws and international copyright treaties, as well as other
intellectual property laws and treaties and contains confidential information and trade secrets. The

9
USER MANUAL

SOFTWARE is licensed to you, not sold. Telerik retains ownership of the copy of the SOFTWARE in your
possession, and all copies you may be licensed to make. Telerik also retains all rights not expressly
granted to you in this LICENSE.

1. GRANT OF LICENSE

Telerik hereby grants to you, and you accept, a LICENSE to install, copy, and use the SOFTWARE only as
authorized below.

(a) Standard Edition Commercial License:

• The Sitefinity Standard LICENSE allows you to use the SOFTWARE for 1 (one) top level domain name
(or server name). There is no limitation to the number of subdomains (i.e. by registering a key for
mysite.com, you will be able to use it for all subdomains - www.mysite.com, http://support.mysite.com,
http://mysite.com, etc.).
• To facilitate the development process, Telerik allows you to deploy the SOFTWARE on your testing and
development servers and access your applications via the IP address(es).
• There is no limitation to the number of CMS User accounts.
• Included Support: Telerik guarantees response within 48 hours to your support inquiries. As part of
your LICENSE you are entitled to receive unlimited number of support incidents.

(b) Standard Edition Trial License:

• You are granted a LICENSE for evaluation purposes only. You are authorized to install, copy, and use
the SOFTWARE for the sole purpose of testing its functionality. You are not allowed to use it for any
commercial purpose.
• The Sitefinity Trial LICENSE is perpetual and works without license keys. The Trial LICENSE displays a
random trial message that will be disabled once you purchase a license for the Standard Edition
Commercial License and create a license key for your domain.
• There is no limitation to the number of CMS User accounts.
• Included Support: Telerik guarantees response within 72 hours to your support inquiries. As part of
your LICENSE you are entitled to receive technical support for up to 5 support incidents.

(c) Community Edition License:

• The Sitefinity Community LICENSE allows you to use the SOFTWARE for 1 (one) top level domain
name (or server name). There is no limitation to the number of subdomains (i.e. by registering a key for
mysite.com, you will be able to use it for all subdomains - www.mysite.com, http://support.mysite.com,
http://mysite.com, etc.).
• Telerik allows you to deploy the SOFTWARE on any testing, development or production server.
• Included Support: This LICENSE entitles you to Community support only. You can submit inquiries via
the Sitefinity Forums where other members of the community will be able to provide answers. The
Forum is available to all Client.net account holders. Even though we actively monitor and answer posts,
the Forum's main purpose is to offer convenient peer-to-peer assistance and we do not guarantee a
reply to all threads.
• Telerik requires the display of the “Powered by Sitefinity” logo on all pages that use the Sitefinity
Community version.
• The Sitefinity Community LICENSE can be used for both personal and commercial websites.

10
USER MANUAL

2. DESCRIPTION OF OTHER RIGHTS AND LIMITATIONS

(a) You are not allowed to use the SOFTWARE as a whole, or any of its comprising elements, as a basis
for creation of another software product.

(b) You are not allowed to use individually the software components comprising the SOFTWARE, but
only as an integral part of the SOFTWARE.

(c) You are not allowed to disassemble, decompile or "unlock", decode or otherwise reverse translate or
engineer, or attempt in any manner to reconstruct or discover any source code or underlying algorithms
of the SOFTWARE provided in object code form only.

(d) You are not allowed to use, copy, modify, or merge copies of the SOFTWARE or any accompanying
documents except as permitted in this LICENSE.

(e) You may not use the Telerik product names, logos or trademarks to market your SERVICES or
IMPLEMENTATIONS related to the SOFTWARE without the express prior consent of Telerik.

(f) You agree to indemnify, hold harmless, and defend Telerik and its resellers from and against any and
all claims or lawsuits including attorney's fees that arise or result from the use or distribution of your
software product.

(g) Independent software vendors involved in the development, maintenance and publication of .NET
components are not allowed to use the SOFTWARE without the express permission of Telerik.

3. DELIVERY

Telerik shall deliver to LICENSEE a master copy of the SOFTWARE licensed hereunder in compiled C#
code in electronic files only. Documentation shall also be provided in electronic format.

4. UPGRADES

The Standard Edition Commercial LICENSE entitles the LICENSEE to receive all version updates,
patches, and bug-fixes released for a period of 1 (one) year after the day of purchase. SOFTWARE
labeled as an upgrade replaces and/or supplements (and may disable) the product that formed the basis
for your eligibility for the upgrade. You may use the resulting upgraded product only in accordance with
the terms of this LICENSE.

5. TERMINATION

This LICENSE shall last as long as you use the SOFTWARE in compliance with this LICENSE. Telerik may
terminate this LICENSE if you fail to comply with any of the terms and conditions herein. In such event
you agree to cease using and destroy all copies of the SOFTWARE, which you have been licensed to use
and distribute.

6. COPYRIGHT

11
USER MANUAL

All title and copyrights in and to the SOFTWARE (excluding the Sitefinity software modules listed
below), the accompanying materials, and any copies of the SOFTWARE, and any trademarks or service
marks of Telerik are owned by Telerik. All title and intellectual property rights in and to the content that
may be accessed through use of the SOFTWARE is the property of the respective content owner and may
be protected by applicable copyright or other intellectual property laws and treaties. All error
corrections, bug fixes, patches, updates or other modifications shall be the sole property of Telerik.

The SOFTWARE includes derivate works based on the software products listed below. Telerik has rights
to redistribute these modules; however the intellectual property for these products remains with their
respective publishers:

(a) “Lucene.net” – search engine software developed by “The Apache Software Foundation”

(b) “Nolics.net 2005” - productivity tool developed by “Nolics”

7. LIMITED WARRANTY

Telerik warrants solely that the SOFTWARE will perform substantially in accordance with the
accompanying written materials for a period of ninety (90) days. Telerik does not warrant the use of the
SOFTWARE will be uninterrupted or error free at all times and in all circumstances, nor that program
errors will be corrected. This limited warranty shall not apply to any error or failure resulting from (i)
machine error, (ii) LICENSEE's failure to follow operating instructions, (iii) negligence or accident, or
(iv) modifications to the SOFTWARE by any person or entity other than Telerik. In the event of a breach
of warranty, LICENSEE 's sole and exclusive remedy, is repair of all or any portion of the SOFTWARE. If
such remedy fails of its essential purpose, LICENSEE 's sole remedy and Telerik's maximum liability shall
be a refund of the paid purchase price for the defective SOFTWARE only. This limited warranty is only
valid if Telerik receives written notice of breach of warranty within thirty days after the warranty period
expires.

8. LIMITATION OF LIABILITY

TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT WILL Telerik BE LIABLE
FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE
OF OR INABILITY TO USE THE PRODUCT, INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF
GOODWILL, WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER
COMMERCIAL DAMAGES OR LOSSES, EVEN IF ADVISED OF THE POSSIBILITY THEREOF, AND
REGARDLESS OF THE LEGAL OR EQUITABLE THEORY (CONTRACT, TORT OR OTHERWISE) UPON
WHICH THE CLAIM IS BASED. IN ANY CASE, Telerik'S ENTIRE LIABILITY UNDER ANY PROVISION OF
THIS AGREEMENT SHALL NOT EXCEED IN THE AGGREGATE THE SUM OF THE LICENSE FEES
LICENSEE PAID TO Telerik FOR THE PRODUCT GIVING RISE TO SUCH DAMAGES, NOTWITHSTANDING
ANY FAILURE OF ESSENTIAL PURPOSE OF ANY LIMITED REMEDY. SOME JURISDICTIONS DO NOT
ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THIS
EXCLUSION AND LIMITATION MAY NOT BE APPLICABLE. Telerik IS NOT RESPONSIBLE FOR ANY
LIABILITY ARISING OUT OF CONTENT PROVIDED BY LICENSEE OR A THIRD PARTY THAT IS ACCESSED
THROUGH THE PRODUCT AND/OR ANY MATERIAL LINKED THROUGH SUCH CONTENT. ANY DATA
INCLUDED IN A PRODUCT UPON SHIPMENT FROM Telerik IS FOR TESTING USE ONLY AND Telerik
HEREBY DISCLAIMS ANY AND ALL LIABILITY ARISING THEREFROM. THE EXTENT OF Telerik'S

12
USER MANUAL

LIABILITY FOR THE LIMITED WARRANTY SECTION SHALL BE AS SET FORTH THEREIN.

9. MISCELLANEOUS

This LICENSE will be governed by the law of the State of Massachusetts, U.S.A. If any provision of this
LICENSE is to be held unenforceable, such holding will not affect the validity of the other provisions
hereof. Failure of a party to enforce any provision of this LICENSE shall not constitute or be construed as
a waiver of such provision or of the right to enforce such provision. This LICENSE represents the entire
understanding between the parties with respect to its subject matter.

YOU ACKNOWLEDGE THAT YOU HAVE READ THIS AGREEMENT, THAT YOU UNDERSTAND THIS
AGREEMENT, AND UNDERSTAND THAT BY CONTINUING THE INSTALLATION OF THE SOFTWARE
PRODUCT, BY LOADING OR RUNNING THE SOFTWARE PRODUCT, OR BY PLACING OR COPYING THE
SOFTWARE ONTO YOUR COMPUTER HARD DRIVE, YOU AGREE TO BE BOUND BY THIS AGREEMENT'S
TERMS AND CONDITIONS. YOU FURTHER AGREE THAT, EXCEPT FOR WRITTEN SEPARATE
AGREEMENTS BETWEEN Telerik AND YOU, THIS AGREEMENT IS A COMPLETE AND EXCLUSIVE
STATEMENT OF THE RIGHTS AND LIABILITIES OF THE PARTIES.

13
USER MANUAL

3. Basic Features and Concepts

Term Definition

Add external pages to You can add external pages to Sitefinity through the GUI. They can be
navigation shown in the site navigation but cannot be edited within Sitefinity.

Automatic Site Map Sitefinity automatically creates a site map.

Automatic Site Navigation The structure of a Web site automatically binds to its navigation
controls. Sitefinity includes four navigational controls : SiteTreeView,
SiteMenu, SitePanelBar, and SiteTabStrip.

Content Any information, data, images, files, text, graphics and media files
contained on or accessible from the Web site.

Content Item The basic unit of content in Sitefinity. This may be any chunk of data
stored in the CMS repository/database tables.

Each content item can be reused in multiple locations throughout the


Web site.

ContentPlaceholder Controls Defines a relative region for content in a master page.

Control Any piece that is a UserControl (.ascx) or CustomControl (.dll) in terms


of ASP.NET we refer to as a control.
Controls do not need to implement any specific interfaces in order to
work with Sitefinity. You can add any type of controls to the Sitefinity
toolbox through the web.config.

Description A summary of what the content item is about.

14
USER MANUAL

Summarizes the current state of the Web site and gives quick
Dashboard
access to the administrative functions the user can view.

Dynamic Content Dynamic content is independent of the page. Content items that you
create and edit in the different modules are dynamic content. They can
either be published on a page or not. If you delete a page where such
items are published, the items remain in the module’s content
repository. Dynamic content takes care of its presentation on the site.
For example, when you write a new blog post, it is automatically
displayed on the live site if you have blogs enabled.

Dynamic content is very convenient when running a large site,


because information used by many pages can be updated in one place.
For more info, see also Shared Content below.

Exposed API Sitefinity exposes a comprehensive set of methods and events that
allow developers to handle and customize almost every aspect of the
application: programmatically create users and set permissions, build
templates and pages, detect and set content, etc.

History Sitefinity supports content history. Each time a user modifies content,
a copy is created in the database. The old version is stored in the
database together with the new version in a list, so the newest version
is on top of the oldest version. This helps the site administrator track
all content modifications together with the user identity and the time
of the modifications.

Intra-site Modules A module class and a collection of .ascx files within an existing
Sitefinity installation. These modules are compiled on demand. You do
not need to register Intra-site modules in the project’s web.config file
as they are automatically detected. For more information, see Module,
and Pluggable Modules below.

Keywords Metadata keywords are used by browsers or search engines to find


and categorize your page.

Locked page If you close the browser while editing, the page stays locked but you

15
USER MANUAL

can return to edit it later.

Administrators cannot edit the locked page but they have the options
to Save or Cancel the changes you have made. Both of these actions
will unlock the page.

Master Page Enables developers to define common areas that every page will
share, such as headers, footers, navigation and so on. A master page
allows you to put the common code in a single file and have it visually
inherited by content pages, creating a consistent appearance and
behavior in your application.

Membership Services Enables the administrator to validate and manage user information
for the Web application. It provides functionality for validating user
credentials, creating and modifying membership users, and managing
user settings such as passwords and e-mail addresses.

Menu Label Determines the link name of the page that appears in the navigation
controls, for example menu.

Module An independent application hosted by Sitefinity. Usually modules are


comprised of groups of controls that work together to form some
business logic. They are not required to use the same provider or
configuration model as Sitefinity. The only interface that is required
for a module to be hosted by Sitefinity is the IWebModule.

See also Intra-site Modules, Pluggable Modules.

Page Inherits the appearance of a master page and template and places its
own content where the master page has defined a ContentPlaceHolder
control.

16
USER MANUAL

A friendly name that maps part of a URL to a physical directory


on the server. This name appears in the URL bar. A page can have
Page Alias (Friendly URL)
several aliases leading to it. Friendly URLs are essential to search
engines.

Page Name The name which this page uses for its URL, for example if the page
name is History and it is a subpage of About, the URL looks like this:

http://domain.com/About/History.aspx

Page Navigation Specifies whether this page should be shown in the site map by
navigation controls such as a SiteMenu and SiteTabStrip.

Page Template In Sitefinity, an abstraction for the master page. Defines the common
layout and content that is used for several pages. The Template is
based on the master page markup together with the theme, and the
controls added to its placeholders. Any changes made to a template
will affect all the pages associated with it.

Page Title The page title is displayed in the browser title bar.

Pluggable Modules Developed by Telerik and shipped with Sitefinity, these are
precompiled .dll files that are put in the project’s bin folder. Pluggable
modules can be customized by adding additional fields and providers. .
For more information, see Intra-site Modules and Module.

RadControls Sitefinity is shipped with all components from the award-winning


Telerik RadControls for ASP.NET AJAX suite. They enable developers
to rapidly build the interface of the Web site project and integrate
with the core CMS application.

RSS RSS stands for Really Simple Syndication and it’s used to describe the
technology used in creating feeds. RSS is an XML-based format that
commonly syndicates news and blog posts, along with other forms of
information,and the RSS helps viewers decide whether they want to
follow the link.

17
USER MANUAL

RSS Feed Feeds, also known as RSS feeds, XML feeds, syndicated content, or web
feeds, contain frequently updated content published by a Web site.
They are usually used for news and blogs.

Users can subscribe to feeds to automatically check for and download


updates they can view later. A feed contains a list of items, each of
which is identified by a link. Each item can have any amount of
metadata associated with it.

Section Handler Section handlers are responsible for reading the configuration settings
from the web.config file and converting it into a configuration object.

Shared Content Content that is used repeatedly among pages on your Web site.
Content sharing is a convenient way to save time with updates and
changes. See also Dynamic Content.

Static Content This is content placed through controls on Web pages, such as text and
images inserted directly in the Generic Content controls.

Static content is totally dependent on the page and it cannot be edited


outside the page. If you delete the page, the static content is also
removed. If you need to display new content on the site, then you need
to add a new control to the Web page first.

Tags Words or labels attached to some content and used to describe and
categorize it.

Tag Cloud One of the display modes for tags. The more frequently a tag has been
used, the larger it appears in the tag cloud. By default, tag clouds are
sorted alphabetically. but you can also sort them by popularity. When
you click a tag in the tag cloud, the tagged content for the particular
provider (for example only blogs or only news) is displayed.

18
USER MANUAL

An ASP.NET theme is a collection of properties that define the


graphical appearance of pages and controls in your Web site. A
theme can include skin files that define property settings for
Theme ASP.NET Web server controls and it can include Cascading Style
Sheets (.css files) and graphics. By applying a theme, you can give
the pages in your Web site a consistent appearance. Themes are
defined in special directories in a Web site or on a Web server.

URL Acronym for Uniform Resource Locator. The Web address you use to
access a specific Web page.

URL Rewriter A rewrite engine that modifies URLs before fetching the requested
item. This is a useful SEO tool as you can create user and search engine
friendly Web site URLs.

User Control A group of one or more server controls or static HTML elements that
encapsulate a piece of functionality. A user control typically resides on
a page with other elements but the .NET framework treats it as a
standalone object. By exposing properties of the control through the
code-behind (or in the HTML), other elements can easily interact with
the user control programmatically. It has an interface that can be
completely edited and changed. It can be manipulated at design-time
and runtime through properties.

User Role A role defines a group of users associated with the same permissions.
Roles determine which parts of Sitefinity are accessible to users.

Web.config The web.config file in ASP.NET is the central location for your Web
application configuration. When you want to change some setting, you
just edit this XML file and do not need to modify the code. It is
formatted in XML and can be opened in Notepad or Visual Studio.
Many properties for controls, such as a true or false value for enabling
workflow, is set in this file.

Web Farm A Web farm is a setup of a single Web site across multiple servers,
which handle various web requests. This type of setup is commonly
required for larger sites that generate large amount of traffic. The user

19
USER MANUAL

requests are handled by the different servers.

Workflow * Defined series of tasks that occur between content origination and its
publication on the live site. At each stage of the workflow, an
individual or group is responsible for a specific task, such as saving or
publishing a page. Once the task is complete, the workflow ensures
that the individuals responsible for the next task are notified. There is
page and content workflow in Sitefinity and they are both disabled by
default.

20
USER MANUAL

4. Login
All of Sitefinity’s content, such as pages, images, documents and videos, are stored in the
database by default. So users can edit the website, they must login to Sitefinity. This, in turn, will
update the database. There are two ways you can log into Sitefinity:

• Access the Sitefinity Project Manager:

 Start Menu > All Programs > telerik > Sitefinity3.x > Sitefinity3.x.
 Go to this URL: http://localhost/telerik/Sitefinity3.x/Default.aspx

Once you access the Sitefinity Project Manager, click Edit next to a website. This will bring you to the
administrative back-end of an existing project. The default login page opens in a new browser window.

• Log in directly:

 Go to this URL: http://localhost/[Virtual_Directory_Name]/Sitefinity/Login.aspx

Once you see the login page, type in your username and password. Then, click login or press the enter
key. After successful login, by default, you will see the Sitefinity Dashboard. This provides access to the
administrative tools, such as the user interface for editing pages, if you have appropriate permissions.

21
USER MANUAL

5. The Sitefinity Workspace


Six main Sitefinity sections are accessible through the tabs listed below. Depending on your permissions,
you may or may not be able to view all of them.

The Dashboard is where you enter once you log in. This is your log of recent activities. It is meant to
help you keep track of the latest changes to the Web site. It also provides quick access to the most
commonly used administrative tools.

The Pages area allows you to create, edit and delete pages and page templates. You can easily check the
pages status and manage page and site map permissions.

The Modules area allows you to create, edit and delete various content items. It is divided into the
following modules: Generic Content, News, Blogs, Lists, Polls, Forums, Images & Documents, Events and
Newsletters. You can also manage the permissions for these modules here.

The Files area allows you to manage the file structure of the Web site administered by Sitefinity. You can
create and upload files and folders here.

The Administration area allows you to manage services, permissions, users and roles, and tools.

The Live Site tab leads you to the published copy of the Web site. It contains the current published
version of the content. This is what the general site visitors see without logging in. If the project has
been deployed on a live Web server, the Live Site tab allows you to preview the published content
without opening a new browser window and typing the URL.

22
USER MANUAL

My Preferences
Sitefinity allows you to change some of the default settings of the GUI according to your preferences
from here:

There are three types of settings you can change:


• General
• Dashboard
• Page editor

General Settings
1. Language
This option is displayed when you have enabled site localization. In the example below, the site
languages set in the <localization> section of the application web.config are English, Spanish, French,
German and Bulgarian. Even if no different language versions of the web pages are available, this
option allows you to set the localization of the CMS. If you select Spanish from the dropdown and
save your setting, when you go to Pages > Site Map, you will see the Spanish versions of the pages
first. Please note that the language bar is only available is localization is turned on in the CMS.

23
USER MANUAL

2. Start screen
By default, after a successful login, you are redirected to the Dashboard screen. Here you can set a
different start screen.

The contents of the dropdown list changes according to the permissions granted to the currently
logged user. A user with CMS access and Page Permissions, for example will be able to see
Dashboard, Pages > Sitemap and Live Site only.
For details about permissions, refer to Page Permissions.

3. Show FAQs everywhere


Clear the checkbox if you want to hide the right panes which display FAQs at the different screens in
the administration part of Sitefinity.

24
USER MANUAL

Dashboard Settings
1. It is easy to hide this area of the Dashboard:

To do this, clear the Show the Main Sections panel checkbox:

2. Customize your Dashboard further by selecting which items to show in the What’s been up lately
area:

25
USER MANUAL

To do this, select from the items in the list.

The list changes according to the View permissions granted to the currently logged user.
If page workflow is enabled, there will be an option to show pages in every workflow status
available, such as last published pages and last pages submitted for approval.

26
USER MANUAL

Page Editor Settings


The link below is visible to users who are granted the Modify page permission.

For details about permissions, refer to Page Permissions.


Here you can change the default page edit mode. In the web.config file it is initially set to Overlay.

For more information about personalization, please refer to Personalization in our Developer Manual.

27
USER MANUAL

My Profile

Each Sitefinity user can change their user profile.

To edit your email, first name and last name:

1. Log in Sitefinity.

2. Click My Profile in the top right corner of the screen:

3. The user profile form opens. Apply your changes. You cannot change your username.

4. Click Save user info.

28
USER MANUAL

To change your password:

1. Click the Change Password link in the left pane.

2. Enter your old password.

3. Enter your new password.

4. Re-enter your new password.

5. Click Change password.

29
USER MANUAL

6. Working with Page Templates


Master Pages and Templates Overview

Sitefinity pages are based on page templates, which in turn are generated from Master pages. Master
pages and page templates reduce the work involved in creating numerous pages with the same layout
and behavior. For example, you can use a master page to standardize the headers and footers of the Web
pages in a particular site.

Sitefinity page templates relate a master page to Web pages. Sitefinity users can choose from the
predefined templates, such as those used in the TIU sample site, or software developers can upload
master pages created by external applications such as Visual Studio® or Dreamweaver®.

Many templates can use one master page and one template can be used by many Web pages. Based on
the master page markup together with the controls added to its placeholders, the template defines the
structure and organization of a Web page. For example, the template for the page shown below defines
three content areas.

The developer or end user can choose what controls to place in each content area on any given page, so
that two pages using the same template can actually have a very different appearance.

30
USER MANUAL

To access the Sitefinity Page Templates Manager, go to the Pages tab and then click Templates.

In the left pane is the list of all templates currently available for this project. Click a template in the list to
view and edit it.

On the right is a grid view of all templates. This view is displayed when you click All Templates.
When you click on a template, you will see tabs on the right. Click on properties and use it to check the
following details about each template:

 the .master file used by the template


 the theme used by the template
 the published pages using the template
 the date and time when the template was created

31
USER MANUAL

Setting Template Properties

To edit template properties:

1. Go to Pages > Templates.

2. Click to select the template in the list or All Templates grid.

3. Click the Properties tab on the right.

 Template Name
The template name should be unique. It will appear in the Templates dropdown list in edit
page mode and in the All Templates grid.

 Head tags
Inserts link and meta elements in the head section of your page template. Click the link
buttons to set the properties for the tags.

4. Click Save changes when you are done.

Editing a Template

To edit the appearance of a template:

1. Go to Pages > Templates.

2. Click to select the template in the list.

3. Click Edit this template.

4. Expand the Add Controls toolbox and drag controls to the placeholders defined by the
corresponding master page.

5. Click Save changes when you are done.

Template changes do not pass through workflow and are immediately effected on the live site.

32
USER MANUAL

Templates Versioning*
This feature is not available in the Sitefinity Community Edition.Each time you modify a template, the
changes are saved as a new version of the template. You can view template history as well as the user
identity and the time of the changes. To disable templates versioning, set the allowPageHistory
attribute to false in the application web.config:

<add connectionStringName="DefaultConnection"
allowPageHistory="false"
allowPageWorkflow="false" name="Sitefinity"
type="Telerik.Cms.Data.DefaultProvider, Telerik.Cms.Data" />

To preview and roll back to previous template versions:

1. Go to Pages > Templates.


2. Click to select the template in the list or All Templates grid.
3. Click the History tab on the right.
4. Click View to preview an older version.

5. Click Rollback to substitute the current template with an older version.

33
USER MANUAL

Duplicating a Template

To duplicate an existing template and create a new one based on it:

1. Go to Pages > Templates.


2. Click to select the template in the list or All Templates grid.
3. Click the Duplicate selected link button.

The copy of the selected template uses the same master page as the original one and is added to All
Templates. You can rename the template and edit it later similarly to the way you edit pages.

Deleting a Template
To delete a template, click the trashcan icon in the All Templates grid.

A warning is displayed if there are published pages using the template you want to delete:

To view which pages are using it, click the link under Pages assigned in the grid.

The .master file will also be deleted if you delete the last template using it!
When you go to a page whose template has been deleted, the following message is displayed:
“No template has been selected.” In Page Edit Mode, you should choose a new template from the
dropdown list in the top right of the screen. Also, you can upload the old .master file to generate a
similar template. To do this, go to Templates > Upload master page.

34
USER MANUAL

7. Working with Web Pages


Pages have predefined structural appearance inherited from a master page or a page template. They
contain ContentPlaceHolder controls that define the type of content the user can enter on a Web Page.
Depending on the ContentPlaceHolder properties, the user can drag and drop controls and preview the
page in a full browser window.

A page consists of:

 Name: the URL of the page.


 Alias: different names and URLs for the same page.
 Metadata: general settings such as Title, Meta tags.
 Reference: reference to a page template.
 Controls: controls assigned to the content placeholders defined in the referenced template.

Creating a New Page

When you first go to Pages >Site Map, you will see a message stating that there are no pages available
for this project. You can either create a new page or add an existing external page.

To create a new page in Sitefinity, complete the following steps:

1. Go to Pages >Site Map and click Create a page in the left navigation pane.

2. Set the General properties of the page:

 Page name
The actual file name (system name) of the page. Visitors of the page will reference this name,
along with the entire URL. The page name cannot contain spaces or special characters. The
name of the page cannot be “Default”.

 Menu label
Determines the link name of the page that appears in the navigation controls, for example
menu.

 Page navigation
Specifies whether this page should be shown by navigation controls like menu, treeview,
panelbar, etc.
If Show in navigation is set to No for a page that has subpages, the subpages will still be
shown in the site navigation. This setting is not inherited.

 Page type
Normal page: displays its own content, editable within Sitefinity.
Page group: redirects to its first sub-page.
External page: a link to a page created outside Sitefinity.

35
USER MANUAL

3. In the Head Content section, set the head settings of the page:

 Page Title
This title is displayed in the title bar of any browser viewing the page.

 Description
A short summary of the page content.

 Keywords
Metadata keywords are used by browsers or search engines to find and categorize your page.
Use commas to separate keywords.

4. Expand More Options to set more advanced page properties.

 Security
Anonymous access
Check "Deny" to restrict all access for anonymous visitors and require authentication. Check
"Allow" to enable anonymous access the web page without password verification.
If you set Anonymous access to Deny for a page that has subpages, all subpages will be
inaccessible by unregistered users and will require authentication. The option is disabled at
the Properties tab for the subpage.

Require SSL
Specifies whether this page will require a secure socket layer (https connection). SSL should
be installed on the server.

 Performance
Caching
Check to allow the application to cache this page, otherwise leave unchecked
ViewState
Check to disable viewstate on the page, otherwise leave unchecked

When this option is set to “Yes”, the rendered output of the page is cached depending on the page
cache settings made in the application web.config file, section telerik/cms. For more details on how to
enable caching for pages, please, refer to Page Caching.

When the page is requested again, instead of creating new instances of the page and its controls, the
rendered HTML is retrieved from the cache and written directly to the output stream. In other words,
no additional database calls are made, no control instances, no events are fired. The response time to
serve a cached page is equal to the time needed to serve a static .HTML file.

The output cache is cleared when a page is published. That ensures that all changes made to a cached
page are effected immediately on the live site.

 Search Indexing
Mark yes to enable this page to be searched by an index. If marked to no, this page cannot be
searched anywhere in the system

36
USER MANUAL

 Page URLs
Enter in additional URLs for a page. These URLs can redirect to any other one in the list

 Add head tags:


Additional Tags: base, link and meta tags.

5. When you complete the required fields, click Create this page.

Adding an External Page

You can add any page created outside Sitefinity to your Web application. For example, you have an .aspx
file ready and you do not need to edit its content within Sitefinity. You just need to have a link to this file
in the dynamically created navigation of Sitefinity.

Follow the instructions below to add an existing file, for example FAQ.html, to the Web site. Although
you can edit an external page’s properties, such as its location within the project, you cannot edit
content on the page within Sitefinity. Please note that workflow is disabled for adding external pages, so
the page goes live immediately.

1. Go to Files and upload the FAQ.html to the Files folder.

37
USER MANUAL

2. Go to Pages >Site Map and select All Pages.

3. Click Create a page.

4. Set the Page Name property to FAQ for example.

5. Select External Page as the Page Type.

6. Type the URL to the .html file: ~/Files/FAQ.html.

7. Click Create this page.

38
USER MANUAL

You should be able to access it through this URL: http://<root>/Files/FAQ.html.

39
USER MANUAL

Setting Page Permissions


To set the permissions for a given page:

1. Click to select the page in the site map.

2. Click the Permissions tab on the right.

3. From the dropdown list, select the role for which you want to set the permissions:

4. When you are done, click Save changes.

For more details about setting page permissions, please refer to Page Permissions.

40
USER MANUAL

All Pages Grid View

When you are at the Site Map tab and click the All Pages link, a grid view with all Web pages available
for this project is displayed.

Here you can filter pages to show only those with a given status (Draft, For Approval, Declined,
Approved and Published) and perform a group operation, for example mass approval or mass
publication. For more details about managing the page workflow *, please refer to Page Workflow.

You can also sort pages in the grid by last modified, last modified by a certain user or status
(alphabetically).

When you go to the Permissions tab, you can set the permissions for all pages. If you do that, by default
all the pages will have the same permissions. For more details about setting sitemap permissions, please
refer to Site Map Permissions.

41
USER MANUAL

Editing Page Properties

To edit the properties of a page:

1. Click to select the page in the site map.

2. Click the Properties tab on the right.

3. On the More Options section, you can now add other URLs and/or change the default URL.

4. When you are done, click Save changes.

We do not recommend setting optional URLs to Default.aspx. Sitefinity uses a URL rewriter and when it
comes across Default.aspx in the application root, it will actually load the page that has been set as home
page and displayed bold in the site map.

Edit Page Mode

To open a web page for editing:

1. Click to select the page in the site map.

2. Click Edit this page.

There are two edit page modes available: Overlay and Classic.

42
USER MANUAL

To change the default edit page mode to Classic, go to My Preferences > Page editor settings or:

1. Open the application web.config file.

2. Find this section and set the pageEditorUIMode attribute to Classic:

<cms defaultProvider="Sitefinity"
pageExtension=".aspx"
pageEditorUIMode="Classic"
disabled="false">

3. Refresh the page.

Setting the Default Page

To set a page as Default (Home) page:

1. Click to select the page in the site map.

2. Click Set home page. The default page is displayed in bold type in the site map.

43
USER MANUAL

Reordering Pages

Sitefinity allows users with sufficient permissions to reorder pages. Once you move a page, all navigation
controls will reflect its new location.

The action of page reordering does not pass through the workflow and will be effected immediately on
the staged copy of the site.

Moving Pages
To move one page from a given section (parent page) to another section:

1. Click the source page to select it.


2. Drag and drop the source page over the destination page that will become its new parent.

44
USER MANUAL

Ordering Pages
To change the order of pages within their own section (parent Page), you need to do the following:

1. Click the page that needs to be re-ordered to select it.


2. Click Move page up or Move page down.

Duplicating a Page

When you need to have a page similar to an existing page, instead of starting from scratch, you can
duplicate a page. You need to select the page you want to duplicate in the site map first and then click
Duplicate page.

If page workflow is enabled, in order to show the duplicated page on the live site navigation, you need to
publish it first. When page workflow is disabled, the duplicated page is published immediately.

45
USER MANUAL

Page Workflow

Please note that this feature is not available in the Sitefinity Community Edition.

The main purpose of every Content Management System is to provide an easily managed workflow
process ensuring that the correct content appears at the right place and at the right time. A series of pre-
defined workflow tasks allows for tracking Web pages through the entire process from authoring,
review, and approval to publication. In addition, workflow facilitates the movement of work to the
individuals responsible for the various tasks. Every user gets real-time status of where work is in the
workflow process, which tasks are complete or pending, etc.

We define workflow as the cycle of steps that occur between the content origination and its final
appearance on the live site. Those steps are the particular actions that the users perform with the
content in order to change its status and move it further along the workflow cycle. Telerik Sitefinity CMS
uses a linear workflow cycle facilitating expedient processing of content modifications, while at the same
time provides adequate levels of control and administration. During one workflow cycle, the content
passes through three distinct stages:

 Work in Progress
 Staged Content
 Live Content

The diagram below illustrates these three stages along with the respective user activities that change the
content status.

46
USER MANUAL

All Sitefinity pages pass through a series of states in a fixed workflow. A page can be in one of the
following pre-defined states:

 Draft
 For Approval
 Declined
 Approved
 Published

Sitefinity provides the following stages in page workflow management:

 Create a new page or start to edit a new one. Save the changes to the page as a draft, or cancel
the changes and leave it as it is.

 Send the draft page for approval to an administrator or user with approval permission granted.

 The draft page can be declined and sent back to the user for more changes.

 The draft page can be approved for publishing to the live site.

 The approved page can be published to the live site.

The page can be edited at any of the stages in the workflow. Cancelling an edit causes the page to remain
at the same stage in the workflow. Saving changes to the page reassigns its status as a draft. Changes to
the page are not seen in the live site until the page is approved and published. The page remains in the
staging site until the workflow process has been completed.

All page workflow actions are done within the Pages area. Upon navigating to the Pages area and
clicking All Pages, you will see a complete list of all the pages in the site and their current workflow
status.

The following options are given at each stage in the Page Manager work area:

 Create a page/edit the current page.


You can preview the changes that have been made as if the page was live, and then save or cancel
those changes as required.

 Draft a page.
You can send the draft page for approval or re-edit the page.

47
USER MANUAL

 Send a page for approval.


The approver can choose to approve the changes to the page, decline the changes (which
necessitates that the pages must be re-edited), or edit the page themselves.

 Page is declined.
If the changes to the page have been declined, the only choice available is to re-edit the page
again and re-submit for approval.

 Page is approved.
If the changes to the page have been approved, the users with the appropriate permissions may
then publish it to the live site.

 Page is published:
If a page has been published to the live site, it may be edited as necessary.

48
USER MANUAL

Page Localization

The localization at page level assures that your site will have localized versions of each page. Each
language version is a separate instance, the following properties of which can be localized:

 menu label
 title
 description
 keywords

There is a Language Selector control that you can use on the public side to allow users to switch between
the languages.

Here is its location in the toolbox:

Here is its appearance on the page:

This dropdown list will populate with a list of languages available in the Sitefinity system.

49
USER MANUAL

To create a foreign language of a page, follow these steps:

1. Select a page in the site map.

2. Click the language you want to add:

50
USER MANUAL

3. Set the localizable properties such as menu label, title, etc. and click Create this version.

51
USER MANUAL

4. The page is now displayed in Edit mode. Here you have two options: edit it from scratch or copy
the template, theme and controls from the English language version as shown below:

5. The page template, theme and all controls are copied from the English version and there is no
relation between the controls in the English and German versions of this page.
6. Drag and drop a language selector onto the page for the English and German versions, so users
can navigate between the English and German versions of the page.

52
USER MANUAL

8. Working with Controls


Adding Controls

Sitefinity allows users to add tools from the toolbox, which is located on the right hand side of the edit a
page screen. To edit a page, click the Edit this page button if localization is turned off. If it’s turned on,
click Edit this language version button. The demos instructions below assume that localization has been
turned off in Sitefinity.

To add a control to a page, follow these steps:

1. Expand the Add Controls toolbox.

2. Select a control from the list (Generic Content, Image, etc.).

53
USER MANUAL

3. From the dropdown list, choose a container to add the control to or drag and drop the control
into a placeholder.

4. Click the Add button.

Deleting Controls

To delete a control:

1. Click to select the page in the site map.

2. Click Edit this page.

3. Click the trashcan icon:

Setting Control Properties

The Control Properties Grid is a powerful tool that allows developers and end-users to configure
controls placed in a particular page directly from within the browser and eliminates the need for offline
configuration and upload of the control files. The property modifications are reflected immediately.

To set the control properties:

1. Click to select a page in the site map.

2. Click Edit this page.

3. Click Edit in the control header to access the Control Properties grid.

54
USER MANUAL

Some controls use content view designers, such as the Images and Documents module’s download list
shown below, which allow end users to check off boxes and use other UI controls to adjust properties:

Some of the controls, such as a tags list, use just have a properties tab instead:

55
USER MANUAL

The following images represent the Basic and Advanced tabs of the Image control.

56
USER MANUAL

4. After adjusting properties, click I’m done to save your changes.


To exit the Control Properties grid without saving your changes, click Cancel.

9. Working with Modules


Modules are reusable self-contained units you can easily integrate in many different applications. You
can use them to present content on a Web site or to extend the functionality of your Web site, such as
logical grouping of user controls that provide common functionality and business logic. Sitefinity
provides the structure to integrate modules and offers two options:

1. User controls: Developed by the user and easily integrated in the Sitefinity Modules section as
an assembly.

2. Pluggable modules: A set of pre-built pluggable modules offering the common functionality
that comes with Sitefinity:

57
USER MANUAL

 Generic Content: Allows users to create, manage and reuse separate content items.

 News Module: Allows users to manage features and articles on a Web site.

 Blogs Module: Allows users to easily create and manage blogs.

 Lists Module: Allows users to create and manage all kinds of lists.

 Polls Module: Allows users to quickly create and publish online polls on a Web site.

 Forums Module: Allows users to create and moderate forums on a Web site.

 Images & Documents: Allows users to upload shareable images and documents, stored in
libraries

 Events: Provides users with ability to schedule and announce events through their website

 Newsletters: provides basic functionality for creating newsletters and management of


emails and subscriber groups.

Each module has an administrative and public side. The administrative side is seen by clicking on the
Modules tab in Sitefinity. The public side consists of the controls that users should insert on the page,
such as the Blog Posts control, to show the module’s data on the page.

ContentView Controls

The News, Blogs, Images and Documents, and Events modules use ContentView controls to display data
on the public side. These controls allow end users to display content within certain categories, change
the display mode, if applicable, remove fields, change date format and assign labels next to fields. To
demonstrate this functionality, here are some screenshots of the ContentView for the News module:

58
USER MANUAL

59
USER MANUAL

Generic Content

This is where you create, store and manage content items most comfortably.

Content Sharing and Branching


The shared content feature allows you to reuse content items over multiple Web pages.

Each time a user creates a content item in the Generic Content module, it is added to the shared content
items list. When in edit page mode, other CMS users can select shared items from that list and add new
items to it. Whenever one instance of shared content is updated, all pages where the same item appears
are updated simultaneously. This feature is especially convenient when there are users responsible for
content authoring/editing only and others responsible for adding that content to the Web pages. The
site is updated automatically when the content contributor makes changes to a shared item.

You need to be granted the proper Module permissions to be able to manage shared content.

When you want to edit just one instance of the content item, you need to remove it from the shared
content items list first, that is, branch the content. After branching, the item is independent, and
changes made to it are not reflected elsewhere. Similarly, changes made in the previously shared item
are not reflected in the branched item.

Each item of shared content is represented by a unique content ID and meta information such as name
(required), description and author. The content ID is used when requesting the content data. If
description and author are not specified, the default text is displayed in the list of items.

When content workflow is switched off, an item can be in one of the following states:

 Published: The item is automatically published upon its creation.

 Locked by user: The item is open for editing and the changes are not saved or cancelled.

60
USER MANUAL

Administrative End
To access the Generic Content module, go to Modules > Generic Content.

Create a shared content item

To create shared content and edit your own items, you need to be granted the View and Create
permissions for the Generic Content module as shown below:

61
USER MANUAL

Even if you do not have any Page permissions, you can still contribute shared content. You can create
shared content in either of the following ways.

A. In the Generic Content module:

1. Go to Modules > Generic Content.

2. Click Create new item.

3. Type the name of the content item. It is advisable to give unique names. This field is required.

4. Insert some content in the content area. This field is required.

62
USER MANUAL

5. Select a category from the dropdown list.

6. Attach tags to the content items.

7. Add some description of the item. This field is optional.

8. Type the name of the author. This field is optional.

9. Click Create this item. The item is then shown in the All Content Items list.

63
USER MANUAL

B. In the Generic Content control:

1. Go to Pages > Site Map.

2. Select a page and click Edit this page.

3. Click Edit in the Generic Content control header.

4. Insert some content in the content area.

5. Click the Share this content link.

64
USER MANUAL

6. When the dialog opens, type the name of the content item. It is advisable to give unique names.
This field is required.

7. Add some description of the item. This field is optional.

8. Type the name of the author. This field is optional.

9. Click Share this item. Click I’m done to close the Generic Content Properties grid.

Edit a content item

1. Go to Modules > Generic Content.

2. Search for the item you want to edit and click Edit next to it.

65
USER MANUAL

3. Modify the content item and click Save changes. If you are using this item across many pages,
your changes will affect all pages and will be visible on the live site after publishing.

Delete a content item

1. Go to Modules > Generic Content.

2. Search for the item you want to delete and click the trashcan icon next to it. When you go the
page(s) using a content item that has been deleted, you will see the following message: This
content has been deleted.

Set permissions for the Generic Content Module

Click the Permissions link in the left pane. Select a role from the dropdown list and select the necessary
checkboxes to grant permissions for that role. When you are done, click Save Changes. For more details
about permissions, please refer to Module Permissions.

66
USER MANUAL

Localization
This topic outlines the steps you need to follow to create different language versions of content items.
Please read the localizing modules section for more info.

1. Create an item in the default site language, which is English in the example below, and enter
content in the form:

2. Change the language by clicking on one in the Change Language box.

3. Click Edit this item .

4. Create the new language version by entering the language specific content in the content area.

5. Click Save changes.

67
USER MANUAL

In this example, the Name field is not set as localizable, that is why it is the same for all language
versions of the item.

Refer to section Multilingual Content Management > Module Localization for more details about
localization of meta fields.

To view all items created for a particular site language, go to All Content Items and select the language
in the dropdown list.

If you click Edit, you are redirected to edit item mode for the respective language.

If you click the trashcan icon, all language versions of the content item are deleted.

Public End

A. To add existing shared content to a page, do the following:

1. Go to Pages > Site Map.

2. In the site map, click to select the page where you want to insert content.

3. Click Edit this page.

4. Expand the Add Controls toolbox.

5. Select the Generic Content control.

68
USER MANUAL

6. Drag and drop the control to the desired page area.

7. Click Edit in the Generic Content control header.

8. Click the Select shared content link to view all available items.

69
USER MANUAL

In the Select Shared Content Dialog, you can filter items by name and author.

9. In the grid, click Select next to the item you want to insert.

70
USER MANUAL

10. The item is displayed in the editor content area.

11. Click I’m done.

71
USER MANUAL

B. To branch shared content and create an item that will be stored only with the page (static content),
do the following:

1. Go to Pages > Site Map.

2. Select a page and click Edit this page.

3. Find the Generic Content control with the content you want to branch.

4. Click Edit in the control header.

5. Click the Branch this content link.

6. When you finish editing the content, click I’m done.

72
USER MANUAL

News

The News module is based on the Generic Content module, so it shares a common user interface with it.
The News module provides a comfortable way to incorporate news articles and display them on your
web site.

Administrative End
To access the News module, go to Modules > News:

Create news

To create a news item, follow these steps:

1. Go to Modules > News

2. Click Create a new item

3. Complete the form that appears on screen

4. Schedule when the news article should go public and its expiry date with the integrated calendar
as shown below:

5. Click Create this news item:

73
USER MANUAL

Edit news

To edit a news item, follow these steps:

1. Go to Modules > News.

2. Find the news article you want to edit in the list of news and click Edit next to it.

This will open the News editor dialog.

3. Modify the article and click Save changes.

Delete news

1. Go to Modules > News.

2. Find the news article you want to delete in the list of news and click the trashcan icon next to it.

74
USER MANUAL

Search News

Select the search criteria from the dropdown list and click Search:

Set permissions for the News Module

To set permissions on the news module, click the Permissions link in the left pane. When you are done,
click Save Changes. For more details about permissions, please refer to Module Permissions.

75
USER MANUAL

Localization
Localizing news content is almost identical to localizing content in the Generic Content module. This
topic outlines the steps you need to follow to create different language versions of news.

1. Create a news item in the default site language.

2. Change the language.

3. Click Edit this language version.

76
USER MANUAL

4. Create the new language version by entering the language specific content in the content area.

5. Click Save changes.

To view all news items created for a particular site language, go to All news items and select the
language in the dropdown list in the upper right corner of the screen.

77
USER MANUAL

By clicking Edit, you open the German version of the news article for editing.

If you click the trashcan icon, all language versions of the news item are deleted.

78
USER MANUAL

Public End
The news module uses a single control to display news stories called the NewsView:

To display news articles to a page, do the following:

1. Go to Pages > Site Map.

2. In the site map, click to select the page where you want to insert the full text of the news articles.

3. Click Edit this page.

4. Expand the Add Controls toolbox.

5. Select the NewsView control.

6. Drag and drop the control to the desired page area.

7. Click edit on the control

8. Adjust the properties to fit your needs

9. On the top left of the screen, click save if workflow is turned on. If it’s off, click publish to save
your changes

To display archived news articles, follow these steps:

1. Follow steps 1-4 for displaying news articles

2. Select the News Archive control

3. Drag and drop the control to the desired page area

79
USER MANUAL

4. On the top left of the screen, click save if workflow is turned on. If it’s off, click publish to save
your changes

Blogs

A blog is an online journal where you post entries and make them publicly accessible. The entries are
organized in reverse chronological order, that is, the newest post is always at the top. Blog posts
typically consist of:

 title (headline)
 body (main content)
 post comments
 permalink (URL of the full, individual article)
 post date (the date and time the post was published)

Administrative End
To access the Blogs module, go to Modules > Blogs.

Create a blog

1. Click Create a blog.

2. Fill in the Blog name, Description and Author fields.

3. Click Create this blog. Now you can create the first post in this blog.

80
USER MANUAL

The blog page field must be filled in with the page with the Blog Posts control, which will be discussed
later. This will enable features such as Windows Live Writer Support.

Create a post

1. Click Go to all blogs.

2. Find the blog where you want to create a post and click it.

3. Click Create a post.

4. Enter some content.

5. Fill in the post title.

6. Set the publication date.

7. Click Create this post.

Edit a post

1. Click Go to all blogs.

2. Find the blog containing the post you want to modify and click it.

81
USER MANUAL

3. Find the post in the All Posts list, and click Edit. The rich text editor opens.

Make your changes to the blog post, as outlined in Edit a post above

Edit blog settings

1. Click Go to all blogs.

2. Find the blog whose settings you want to edit and click it.

3. Click Set Details in the left pane.

4. Click Save changes.

82
USER MANUAL

Delete a blog

In All blogs, find the blog you want to delete and click the trashcan icon next to it.

Localization
Localizing blogs content is almost identical to localizing content in the Generic Content module. This
topic outlines the steps you need to follow to create different language versions of blog posts.

1. Create a post in the default site language.

83
USER MANUAL

2. Change the language.

3. Click Edit this post.

4. Create the new language version by entering the language specific content in the content area.

5. Click Save changes.

Public End
A single control called Blog Posts must be inserted on the page to show content. There are also three
other controls to add functionality to the blog and here is a complete list of all controls:

1. BlogPosts: displays blog posts.


2. Archive: Provides a RadTreeView used to filter posts be a specific date that have been archived
3. Bloggers: Provides a list of bloggers
4. Calendar: Shows a calendar used to filter posts by a specific date

These controls are accessible in the page’s toolbox by expanding the blogs section:

To display the blogs on the webpage, follow these instructions:

1. Go to Pages->Site Map
2. In the Site Map, click to select the page where you want to insert the BlogPosts control
3. Click Edit This Page (or Edit this Language Version if localization has been turned on)
4. Expand Add Controls-> Blogs:
5. Drag and drop the BlogPosts control where you want it
6. Hover the mouse over it, and click edit Edit
7. Follow the Step-By-Step wizard to configure the look and behavior

To display an archive on your page, follow these instructions:

1. Perform steps 1-4 of displaying blogs on your web page


2. Drop an archive control onto the page

84
USER MANUAL

To display a list of bloggers on your page, follow these steps:

1. Perform steps 1-4 of displaying blogs on your web page


2. Drop a bloggers control onto the page

To display the Calendar on your page, follow these instructions:

1. Perform steps 1-4 of displaying blogs on a web page


2. Drop a Calendar onto the page
3. Click edit on the calendar control
4. Enter blogs as the provider under the data section as shown below:

Lists

The Lists module provides a simple and efficient way of organizing FAQs, contacts, interviews,
testimonials, instructions, tasks, to-do lists, links, dictionaries, etc. It allows you to create logically
related list items, each of which has a headline and content. You create these items using the Lists
module and then display the list on the Web page by dragging a Lists control.

85
USER MANUAL

The provided public control ensures the relation between the separate elements. In FAQ, for instance,
where each item consists of a question and answer, each question can be an anchor taking you to the
answer further down the page; the answer can be expanded when a question is clicked; all the questions
can be on a single page and each answer can be on a separate page, etc.

The main advantage of the Lists module is that it eliminates the need to format items while writing
content. All formatting comes from the css files and themes and content contributors do not have to
worry about bullet styles, separators between the items, different css classes for each item, etc.

Administrative End
To access the Lists module, go to Modules > Lists.

86
USER MANUAL

Create a list

1. Click Create new list.

2. Type the list title in the text field.

3. Click Create this list.

4. Type the headline and content of the first list item and click Add this item.

87
USER MANUAL

Add an item to an existing list

1. Click All Lists in the left pane to display all existing lists.

2. Select the list to which you want to add items.

3. Click Add new list item.

4. Type the headline and content for the new list item and click Add this item.

Edit a list item

1. In All Lists, select the list where the item is.

2. Click Edit to open the item editor.

3. Click Save changes when you are done.

Delete a list item

Select the list where the item is and click Delete.

Change the order of items in a list

1. In All Lists, select the list you want to reorder.

2. Find the item you want to move and click Up or Down.

88
USER MANUAL

Set Permissions for Lists Module

Click the Permissions link in the left pane. When you are done, click Save Changes.
For more details about setting permissions for Lists, please refer to Module Permissions.

89
USER MANUAL

Public End
To display content created in the Lists module on a Web page, do the following:

1. Go to Pages > Site Map.

2. In the site map, click to select the page where you want to insert a list.

3. Click Edit this page.

4. Expand the Add Controls toolbox.

5. Select the Lists control.

6. Drag and drop the Lists control to the desired page area.

7. Click Edit in the control header to display the Basic Properties tab.

8. From all existing lists, select the list(s) you want the control to display.

9. In the Selected lists grid, you can define the order in which the lists are displayed by clicking Up
or Down.

90
USER MANUAL

10. The default list display mode is Simple list. To customize the appearance of your lists, select one
of the predefined display modes. In the dropdown list, select among more predefined modes.

11. Click I’m done to close the Basic Properties grid.

To see the examples of different types of lists, go to the TIU sample site. You will find:

 a simple list in Blogs > Posts (right column)


 an expandable list in Academics > Majors
 an anchor list in Admissions > Applying FAQ
 an expanded list in About Us > Housing Opportunities

91
USER MANUAL

Polls

A Poll is an excellent way to get feedback from users. You use the Polls module to construct the poll, then
you place the poll on as many pages in your site as you like through the Poll Box control.

Through its intuitive user interface, the Sitefinity Polls module allows you to:

 set up any number of polls for your Web site


 manage multiple polls at the same time
 display polls on any page
 activate/deactivate polls
 control poll layout and design
 add, edit and delete polls/poll questions and answers at any time
 prevent duplicate votes by checking IPs
 release blocked IPs
 display poll results graphically
 reset the vote count

Administrative End
To access the Polls module, go to Modules > Polls.

92
USER MANUAL

Create a poll

1. Go to Modules > Polls tab and click Create a poll.

2. Enter the poll title.

3. Enter the poll questions. Click the Add new question button to append more questions.

4. Select the type of answers for each question in the dropdown list. If you select checkboxes, you
will allow multiple selections.

5. Enter the possible poll answers.

6. Pick a chart color for each poll answer.

7. Click Create this poll.

93
USER MANUAL

All Polls list

Here you can edit, delete or view a poll.

Set Permissions for the Polls Module

Click the Permissions link in the left pane. When you are done, click Save Changes.
For more details about setting permissions, please refer to Module Permissions.

Public End
To display content created in the Polls module on a Web page, do the following:

1. Go to Pages > Site Map.

2. In the site map, click to select the page where you want to insert a poll.

3. Click Edit this page.

4. Expand the Add Controls toolbox.

5. Select the Poll Box control.

6. Drag and drop the control to the desired page area.

7. Click Edit in the control header to display the Control Properties grid and click Select.

94
USER MANUAL

8. Select the poll you want to insert and click I’m done.

9. Click I’m done to close the Control Properties grid.

95
USER MANUAL

Forums

This module enables you to run multiple forums on your Web site form a single management interface.
Users can create forums, start threads of questions and responses and organize the forums into
categories. Each forum can belong to one category only.

Administrative End
To access the Forums module, go to Modules > Forums.

Create a forum

1. Click Create new forum.

2. Fill in the Forum name (required) and Description fields.

3. In the dropdown list, select a category to assign the forum to.

4. Set the forum as one of these:

Visible (the forum is public and users can create posts)


Hidden (the forum is not publicly accessible)
Locked (the forum is visible on the live site, but users cannot create posts)

5. Click Create this forum. Now you can create the first thread in this forum. You can edit these
settings later.

96
USER MANUAL

Create a thread

1. Go to All Forums.

2. Find the forum where you want to start a thread and click its name.

3. Click Create a thread.

4. Fill in the Thread title (required).

5. Enter some content (required).

6. Click Create this thread.

Delete a thread

1. Go to All Threads.

2. Click Delete next to the thread you want to delete.

Manage forum posts

1. Go to All Threads.

97
USER MANUAL

2. In the list of threads, click the name of the thread you want to view.

3. Find the post you want to manage and click Edit/Delete/Reply.

The Quote section displays the whole original post. You can edit or delete the quote altogether.

4. Click Save changes when you are done.

98
USER MANUAL

Change forum settings

1. In All Forums, click Settings next to the forum whose settings you want to edit.

2. Make your modifications and click Save changes when you are done.

99
USER MANUAL

Manage categories

1. When in All Forums, click Categories in the left pane.

2. To create a new category, fill in the text field and click Create:

3. To rename a category, click Rename in the list of categories, enter a unique category name and
click Rename:

100
USER MANUAL

4. To delete a category, click the trashcan icon next to the category in the grid (see above). If there
are forums assigned to the deleted category, they are moved to Uncategorized. Sample forum
below belongs to the Music category which has been deleted.

Set Permissions for the Forums Module

Go to All Forums and click the Permissions link in the left pane. When you are done, click Save
Changes.
For more details about setting permissions, please refer to Module Permissions.

101
USER MANUAL

Public End
There are five public controls that you can use if you want to have forums on your Web site:

 Forums: provides a list of forums for your site


 Forum List: provides a categorized list of all forums
 Single Forum: Lists the threads of a single forum and options to create a new thread
 Single Thread: Shows the contents of a single thread and all child posts
 Edit Post: Used to create or edit forum threads and posts

To display the forums created in the module on a Web page, it is usually enough to insert the Forums
control on the Web page. If you have restricted the anonymous access (“Deny anonymous authors”
property is set to true in the forum settings), you should set the LoginPage property to redirect to the
registration page. If you need to customize the appearance of forums, you can make various
combinations of the forums public controls listed above.

For details about using the public controls for Forums, please refer to this KB article:
Using the different Forums module controls.

For details about creating and adding your own Forums provider, please look at the Developer manual:
Sitefinity Modules > Forums > Forums Provider Customization.

If you are using the Forums public controls in your site, make sure you add a script manager in your
.master file as shown below:

<asp:ScriptManager ID="ScriptManager1" runat="server">


</asp:ScriptManager>

This is required since the introduction of the RadEditor Prometheus control.

102
USER MANUAL

Images & Documents

This module provides a shared storage medium for images, documents, videos and other types of media.
This module ensure that this content is stored in one place, so it can be easily reused and shared. The
module’s goal is to provide end users with an easy-to-use option to create, edit and share content and
select it for use in public controls. The benefits for web site administrators are automatic handling of
permissions and automatic storage and retrieval from and to the project database. When migrating the
project, for example, it is much easier to transfer the whole project database, instead of transferring and
managing the image and documents files separately. Moreover, you don’t have to take care of the image
or documents paths when creating/migrating your site.

103
USER MANUAL

Administrative End
Create a library

When you first go to the Modules > Images & Documents tab, you are prompted to create your first
library. The library is the main unit of this module; each library is a container of different types of
content items.

To create a library:

1. Click Create your first library (or Create a library at the All libraries screen):

2. In the Name field, type the name that you want to appear in the user interface. See the image
below.

3. Select the type of library you want to create:


• Image Library: can contain items with file extensions .png, jpg, .gif.

104
USER MANUAL

• Document Library: can contain items with file extensions .doc, .docx, .rtf, .txt, .pdf, .ppt,
.pptx, .html, .xls, .xlsx.
• Custom Library: can contain items with all file extensions.
• Video Library: can contain items with file extensions .wmv.

You can change the allowed file types and create custom library types from the application
web.config file.

4. Expand More Options to set the following restrictions:


• Max library size: the maximum sum of the sizes of all items in the library in MB
• Max number of files: the maximum number of items the library can hold
• Max file size: the maximum size of a single file in the library in KB
• Enable cache – enable this for faster browsing
o Use default settings, or
o Define your expiration settings

105
USER MANUAL

This content will be cached until the content has been changed. If you re-upload a document, for
example, or it expires, then the cache expires.

To set any of the above to unlimited, leave the corresponding field empty.

5. Click Create this library.

Upload items

After you create a library, you need to upload content items to it. There are different kinds of items:
images, documents, videos, etc. Every item has associated metadata, depending on the type of the library
it belongs to. These are the properties of each library item; some of them are kept as metadata:

• Name: the name of the item appearing in the user interface; by default, it is the same as the
filename; if a file with the same name is uploaded, a number is appended to the name
• Size: the size of the file on the disk/the original size of the item
• Author: the name of the user who created the item
• Description: an explanatory note about the item

To upload items to a library:

1. At the All Libraries screen, click Upload.

2. Select the library in which you want the item to reside.

3. Browse to select the item to upload. A message is displayed if the maximum number of items to
upload in the library is reached.

Click Add to select more items. This button is disabled when the maximum number of items for
the library is reached.

4. Click Upload when you have selected the items to upload.

106
USER MANUAL

107
USER MANUAL

Manage libraries

There are two view modes available for libraries: boxes and list.

Boxes:

List:

The operations that can be performed from the All Libraries screen are described below.

108
USER MANUAL

1. Delete a library: click the trashcan icon to delete the library; the items are also deleted from the
database.
2. View all items in a library: click the name of a library in the list.
3. Check how many items are currently uploaded in a library. Clicking the number displays all the
items in the library in a list.
4. Change library settings: click Change Settings to open the key properties of the library. For more
details, refer to section Create a library above.

109
USER MANUAL

Manage items

You can view the uploaded items in an image library either as thumbnails or list.
Thumbnails

List

110
USER MANUAL

The operations that can be performed from the All Items screen are described below.

1. Batch edit

Click the Batch edit link to if you want to open all library items and edit their key properties at once
or attach the same tags to all items.

111
USER MANUAL

For an image library, you can edit the Title and Alternative text properties.
For a document library, you can edit the Title, Author and Description properties.

112
USER MANUAL

2. Edit an image item


You can perform the following actions at this screen:
• edit the name of the item
• open the original file in a new window
• reupload the file to replace the image (this replaces the thumbnail automatically)

• edit the item’s Author, Alternative text, Width and Height properties and associate a
category or tags to the item.

113
USER MANUAL

3. Edit a file
You can perform the following actions at this screen:
• edit the name of the item
• download the original file
• reupload the file to replace the library item (metadata stays the same)
• edit the item’s Author and Description properties, associate tags and category to the item

114
USER MANUAL

4. Delete an item
Click the trashcan icon to delete the item:

5. Sort items by file extension, download items and view links to items.

Public End
The Images&Documents module provides three public controls that serve to display content from a set
of libraries on a public Sitefinity page:

 The Download List displays a list of files uploaded in document or custom libraries. This control
has two view modes: list and table.
 The Image Gallery displays images from libraries. A typical scenario in which it may be used is
creating a public picture gallery on a web site.
 The Video control is based on Telerik’s RadMediaPlayer for Silverlight and is used to display
videos uploaded in video or custom libraries. It can be used to create a vide section on a web site.

Note: The Video control is available in the Sitefinity for .NET 3.5 only.

Since most of the items from the module are used in public pages, there should be easy ways to select
which item to include in a page. When an item has to be inserted in a Generic Content item for example,
this will be done through the rich text editor. The module provides its own implementations of dialogs,
which retrieve items from the module and include them in the Generic Content.

For more information, please refer to the online FAQ.

115
USER MANUAL

Events
Based on the Generic Content module, the Events module provides users with ability to schedule and
announce events through their web site. Its basic features are the following:

• Customization of meta fields


• Commenting system
• Categorization of events
• Tagging of events

The module also provides geomapping feature for the location of events. This feature provides built-in
functionality for location geocoding (retrieving geo-latitude and geo-longitude values) based on the
street, city, country and state (state - in case event is taking place in United States).
You have the option to display maps of events’ location from three leading map services:

• Google Maps
• Yahoo! Maps
• Live Maps

Here is a screenshot of an event using Google Maps:

116
USER MANUAL

Administrative end
The administrative end of the module is largely similar to that of the other Generic Content based
modules, with standard abilities to manipulate events (create, view, update, delete), panels for managing
tags, categories and comments, and, of course ability to define module specific permissions.

The module introduces a new specific panel for working with Geomapping settings, which allows users
to provide necessary data (such as API key) for working with third party APIs.

A peculiarity of the Events module is the ability to display the events both as a list and a calendar. When
you are more interested in the event’s content (like Title or Category to which it belongs), the list view is
more convenient. On the other hand, if you are more interested in the actual date and time when an
event starts or ends, the calendar view would be more convenient.

The calendar view provides a familiar interface similar to Google Calendar or Outlook Calendar and
provides users with the following options:

• View events in a graphical calendar view, with ability to observe day, week or month
• Create a new event by clicking in an empty slot of time
• Edit an event by double-clicking it
• Reschedule an event by dragging it from one location to another
• Reschedule the length of an event by dragging the bottom handle of an event box

To access the Events module, go to Modules > Events:

Create events

To create a news item, follow these steps:

6. Go to Modules > Events

7. Click Create a new event

8. Complete the form that appears on screen

9. Schedule when the event should go public and its expiry date with the integrated calendar as
shown below:

117
USER MANUAL

10. Click Create this news item:

Edit event

To edit a news item, follow these steps:

4. Go to Modules > Events.

5. Find the news article you want to edit in the list of news and click Edit next to it.

This will open the News editor dialog.

6. Modify the article and click Save changes.

Delete events

3. Go to Modules > Events.

4. Find the Event that you want to delete in the list of news and click the trashcan icon next to it.

118
USER MANUAL

Localization
Localizing Events content is almost identical to localizing content in the Generic Content module. To give
you a high level overview of creating language specific event content, follow these steps:

1. Create an event in the default site language.

2. Change the language.

3. Click Edit this event.

4. Create the new language version by entering the language specific content in the content area.

5. Click Save changes.

Public end
The Events module offers two out-of-the-box controls:

• Events View
This control is based on the Content View control and is used for displaying a list of events as
well as a single event. It offers three modes of display: List, Single and Auto. Here is a picture of
the EventsView control:

• Events Schedule View


This control is similar to the calendar view of administrative side and it’s the RadScheduler for
ASP.NET AJAX. It displays events in a calendar-like interface. Users can browse the calendar and
to get detailed information about an event, they only need to double-click the event. Here is what
the Events ScheduleView could look like:

119
USER MANUAL

Newsletters

This module provides basic functionality for creating newsletters and management of emails and
subscriber groups.

A newsletter is a publication regularly distributed to a group of subscribers. General attributes of


newsletters include news and upcoming events of the related organization, as well as contact
information for general inquiries.

Administrative End
The module’s administrative end provides an interface for administrators to be able to:

• create and manage subscriber groups


• create and send newsletters (an option to send the same newsletter/message to a specific
category or a set of subscribers)

SMTP Server Settings

In order to use the Newsletters module you need to enter the settings of your SMTP server. This is
how to do it:

120
USER MANUAL

1. Log in to the Administration and go to section Modules>Newsletters.


2. Click on the link SMTP Server Settings in the left side pane.
3. In the page which opens, enter the settings of your SMTP Server.
4. Click on button Test and save current setting. Using the SMTP server settings and email
provided in step 3, a verification email will be sent.
5. Click on button Activate. The settings will be applied to the Newsletter Module.

121
USER MANUAL

Create subscribers

The first thing you need to do is define the potential mail recipients and group them. For testing
purposes you can use the provided sample subscriber group, Demo, and just add an email to it.

To create a new subscriber group:

1. Click Create a subscriber group.


2. Type the name of the group.
3. Click Create.
4. Click Add subscriber.

5. Enter the email address, first and last name of the newsletter recipient.
Alternatively, you may choose to add from already registered CMS users to this subscriber
group. To do so, click add registered CMS users and select the users to add as subscribers.
6. Click Add (selected).

122
USER MANUAL

Manage subscribers

The Manage subscriber groups link provides a more advanced option for creating subscriber groups.
Here you can select from existing Sitefinity roles and create groups of subscribers based on the
registered CMS users assigned to the roles; thus you will not have to add the email addresses of the
recipients manually, one by one.

123
USER MANUAL

In the Subscriber Groups grid, you can perform the following operations:

• sort groups by creation date


• sort groups by name
• view, add and remove subscribers
• view all newsletters to a given group
• rename a subscriber group
• delete a subscriber group

124
USER MANUAL

Create a newsletter

When you first go to the Modules > Newsletters tab, you are prompted to create your first newsletter.

To create a newsletter:

1. Click Create newsletter.


2. Type the subject, sender’s name and email address.
3. Select the subscriber groups you want to receive the newsletter.

4. Click Next: Write content.


5. Write the content in the formatted panel or using plain text by pressing the Use plain text
button.
6. Send a test email before sending to real subscribers. (optional)
7. Click Next: Preview before sending.
Here you can perform the following operations:
• edit details such as subject, sender details and recipients
• edit the email content
• view the content in a new browser window

125
USER MANUAL

• send a test email before sending it to the real recipients


• send the newsletter to all recipients
• save the content as a draft
• discard your changes and return to All newsletters

Public End
The Newsletter module offers a newsletter sign up form for public users:

This form subscribes users to a specific newsletter:

This form can ask for an e-mail or an e-mail and the user’s name.

126
USER MANUAL

Tags and Categories

Sitefinity supports tags and categories for content from the Generic Content, News, Forums and Events
modules. Tags and categories are very similar; they are both used to describe and organize content
items and allow you to easily search for or browse related content within the CMS.

Tags
These are very much like keywords you attach to content items. The author of the content item can
specify as many tags as they need.

Manage tags for a module

1. At the All Items screen, click the Tags link in the left pane:

2. By default all existing tags are displayed alphabetically. The number of items assigned to a given
tag is shown in brackets.

3. To create a new tag, type a name for the tag and click Add.

127
USER MANUAL

4. Click the tag link to open a screen with the tagged filtered items.

5. Point the mouse over to view the rename and delete links.

6. To sort tags by popularity, click Popularity list:

7. To view a tag cloud, click Tag cloud. The more frequently a tag has been used, the larger the font
size in the tag cloud view.

128
USER MANUAL

Attach tags to content

Users have the ability to tag content in three different ways while creating/editing the content item:

 By explicitly typing the tag into the textbox


 By selecting from already existing tags used by any CMS user
 By selecting from already existing tags that have already been used by the user

1. Click the Add a new tag link button to expand the dialog.

2. Start typing in the tag name field. A suggested word can appear from the existing tags. If you
click it, it will be displayed in the input field.

129
USER MANUAL

3. Click Add to attach the tag. When the new tag is added, it is displayed in yellow and it then fades
to the default background.

4. You can also choose from existing tags. Click My tags/All tags to display a list of tags. Click an
existing tag to add it to the list above.

5. To unassign an item from a tag, click the trashcan icon next to the tag in the list.

130
USER MANUAL

Display tags

To display tags on the web site, you need to insert the Tags List control on a page and then edit its
properties as described below:

1. Click Edit in the control header.

2. Expand the Behavior section and for the TaggedContentURL field, select the page to which the
user will be redirected after opening a tag link. Usually, this is the page where the respective list
control has been inserted (Post List, News Lists).

3. Expand the Data section and in the ProviderName field, type the name of the provider from
which tags are displayed. If you leave this field empty, the default provider for cmsEngine will be
used, which is Generic_Content.

Make sure that the Behavior > TagItemKey property matches up to the Category Key for the module
([ModuleName]TagID). For the news module, this property should be NewsTagID as shown below:

131
USER MANUAL

Categories
Sitefinity supports categories for content from the Generic Content, News, Blogs, Forums, and Events
modules. Categories help you classify and organize related content items. The basic difference between
tags and categories is that an item can belong to only one category, whereas tagged with many tags.

Manage categories for a module

1. Click the Categories link in the left pane:

2. A list of all categories for this module will be displayed. Each category is a link which opens all
module items associated to this category.

132
USER MANUAL

3. To create a new category, type a unique name in the Add a category text field, select a category
under which it belongs (if needed) in the subcategory of drop down list, and click Add.
Note: you cannot enter a category with a name which already exists.

4. To edit a category name or its position in the categories hierarchy, click Edit in the list of
categories, enter a unique category name, select a parent category, and click Update:

5. To add a subcategory under an existing category, click on the Add a subcategory link, enter a
unique name for Subcategory name, and click Add subcategory.

6. To delete a category, click the trashcan icon next to the category in the grid (see above).
If there are items assigned to the deleted category, they will be moved to Uncategorized.

133
USER MANUAL

Categorize content

To categorize content while creating/editing a content item, simply select an existing category from the
Category dropdown list:

134
USER MANUAL

Display categories

To display categories on the web site, you can use two controls: Categories List and Categories Tree.

To use any of the two controls, drop the control on a page and then edit its properties as described
below:

1. Expand the Behavior section and for the CategoryContentUrl field, select the page to which the
user will be redirected after opening a category link. Usually, this is the page where the
respective view or list control has been inserted (News View, News Lists).

2. In the Behavior section set the values of the fields CategoryKey and CategoryKeyType to be
the same as those of the View or List control on the page selected in the previous step. To see the
values of the Content View or List control, expand its Query String Keys section.

3. Expand the Data section and in the ProviderName field, type the name of the provider from
which categories are displayed. If you leave this field empty, the default provider for cmsEngine
will be used, which is Generic_Content.

The Categories Tree control is based in the Telerik’s RadTreeView for ASP.NET AJAX and allows
enhanced capabilities in terms of visualizing categories:

4. To hide the count number of the items associated to each category from the tree view, expand
section Behavior, and select False for ShowContentCount.

5. To set the root category to show in the tree view, expand section Behavior, and select True for
ShowRootCategory.

6. To set a filter for categories, expand section Filters, and enter a category for which you want to
filter the tree view in the field RootCategory.

7. In the RadTreeView section you can make setting to the TreeView.

a. Setting ShowLineImages to True displays lines connecting the Nodes.

b. The CategoriesTreeView field allows you to select a different TreeView control.

135
USER MANUAL

c. The values in the MaxDataBindDepth field allow you to set the maximum number of
hierarchical levels to display. The default is -1, which binds all the levels in the data
source to the control.

d. The field ExpandAllNodesByDefault defines if the category node should show


expanded by default.

For both display types, make sure that the Behavior > CategoryKey property matches up to the
Category Key for the module ([ModuleName]CatID). For the news module, this property should be
NewsCatID as shown below:

Wiki
Created through a public control, a Wiki consists of Wiki contents that are articles. The Wikis can be
created and managed in the Wiki module or they can be created through the same Wiki control. A Wiki
has a name, a short description, an owner, or the author who created it, and the Wiki’s creation date.
Wiki content has a name, a user-friendly title, an author, html content, and the Wiki content can be
categorized or tagged. Below is an image of the module’s WikiView control:

Administrative Side
Wiki List View
To manage the Wikis, the user has to go to the Wiki module by going to Modules > Wiki. To view a list of
the existing Wikis, go to the initial screen for the Wiki module. The list can be sorted by name,
description, owner (author) or the date the wiki was created. Below is a screenshot if this view:

136
USER MANUAL

New Wiki View


To create a new Wiki, the user has to press the Create Wiki button. Then, the user types a unique name
for the Wiki and optionally enters a short description. The user can press the Create the Wiki button or
the Cancel button to return to the previous screen. Below is a screenshot of creating a Wiki:

Wiki Preview
To view an existing Wiki, the user has to go to initial screen (Modules > Wiki) and select the desired
Wiki. Then, the user goes to the preview screen to display Wiki details. These details are the name, the
description, the owner, the creation date and the count of wiki contents for the specified wiki.

137
USER MANUAL

Wiki Edit View


To edit the Wiki, the user has to continue to the edit screen by pressing the Edit this Wiki button or
selecting the Edit tab. The user can change the name and the description of the wiki as shown in the
image below this paragraph:

Wiki Permissions View


To change the permissions for the selected Wiki, the user has to select the Permissions tab. On this
screen, the user can set the permissions of the Wiki for every role. By default, the Wiki can inherit the
permissions of the Wiki module. To break inheritance or reconnect inheritance, the user click the inherit
or break button as shown below this sentence:

138
USER MANUAL

Categories View
To manage the categories of the Wiki contents, the user has to go to the module’s categories screen. This
categories screen is identical to the categories views of the other Generic Content based modules:
Generic Content, News, Blogs, Images and Documents, and Events.

Module Permissions View


To manage the permissions of the whole module, the user has to go to the Permissions screen of the
Wiki module. Like the Categories View, setting up permissions is the same for the Generic Content
based modules. Here is a screenshot of setting up permissions:

139
USER MANUAL

Wiki Search Index


To create or manage a search index for the Wiki content, the user has to go to the Administration section
of Sitefinity. Then, the user creates a search index by clicking the Create a search index button.

On the next screen, the user completes information about the Wiki as shown below this sentence:

140
USER MANUAL

Public Side

Adding Wiki Controls to a Page


To add one of the Wiki public controls, the user has to go to the edit screen of the page where the control
will be added. Below is the edit screen of a page with the Wiki controls circled:

141
USER MANUAL

To add the WikiView control the user has to drop it onto a container. To set the control properties, the
user has to open the edit dialog. This can be done by hovering over the control, then left clicking the edit
button as shown below this sentence:

The WikiView control can be used to display a list of Wiki contents and a single Wiki article. To change
the display mode, the user must go to Behavior > BehaviorMode and select Master to show a list articles
or detail to show a single article. By default, the display mode is auto and the control itself decides how
to show the content. Here is a screenshot of the property:

142
USER MANUAL

To set one of the properties related to the Wiki content, expand the “Wiki” category as shown below this
sentence:

To set a default Wiki that will be displayed, when no Wiki is provided, the user has to fill the WikiName
property. To set a default Wiki content that will be displayed when no content is provided the user has
to fill the WikiPage property. If this field is left empty and no wiki content is specified, then the first
content created for the specified Wiki will be displayed (usually the home content). To set the search
index for the search controls the user has to fill the IndexCatalogue property. To set a default display
mode for the specified Wiki, the user has to use the WikiMode property. By default this property is set to
show the Content screen.

Wiki View
Several controls can be used to display and to search Wiki contents. The WikiView is the main control
that can be used to list Wiki contents or to visualize a single Wiki. The WikiView control is based on the
ContentView control with some enhancements. In detail mode, the control has several screens divided
by tabs. There is a section for viewing content, editing the information, reviewing comments, listing
previous versions of the content and there is a search screen. The Content Screen displays the Wiki
Content Title (or its name when a title is absent), the content, the category and the tags of the content.
When the user clicks the tag or category, the user sees content related to those identifiers; a
functionality deriving from the ContentView control.

The Edit Screen contains an input for the content title, a RadEditor, similar to the editors in Sitefinity
with a new tool for managing the wiki links. Below is an image of this screen:

143
USER MANUAL

Here is an image of the link manager:

144
USER MANUAL

This tool can be used to modify existing Wiki links or to create new ones. To modify an existing link,
select the link with the mouse or the keyboard by highlighting it. When properly selected, the tool has its
input fields set to the corresponding parts of the wiki link. To create a new link from a word, highlight
the word and launch the tool. To create a brand new link, click on the link manager without highlighting
any content.

The link manager has three inputs. One is for the Wiki name and the field contains a combo box that lists
the existing Wikis. The user may enter a non-existent Wiki into this field. When no Wiki name is
provided, the current Wiki will be used. The second field is for the Wiki content name, which uses a
combo box, that lists the available Wiki contents for the selected Wiki. The third input is a text box for
the inner text that will appear for the anchor tag representing the Wiki link. When a Wiki content name
is selected (by selecting an existing from the list or by typing a new one) the Insert button is enabled and
the link can be inserted.

The edit section controls editing your existing Wiki content, so the users can select a category, manage
tags and make other changes. If the edited Wiki content does not exist then clicking the “Save” button
creates it. It also creates a Wiki if the edited content does not belong to an existing Wiki. If the edited
content already exists and the editing user has the right permissions, then she can delete the Wiki
content by pressing the Delete button.

The Comments Section contains the Sitefinity control for listing and adding comments.

The History Section contains a version control, extending the Sitefinity VersionList control, by adding
functionality for comparing revisions. Below is an image of the history tab:

145
USER MANUAL

The two versions are compared by checking the checkboxes on their rows and pressing the compare
button, circled above this paragraph. Two additional areas are included in the screen. One area is for the
differences in the Wiki content title and the other is for the differences of the Wiki content itself.
The Search Section contains Sitefinity based controls for filtering Wiki contents by several criteria:
keyword, name, title, name, tag and category.

146
USER MANUAL

When searching for Wiki contents, based on a tag or a category, the text box changes to a combo box.
The results of the search are displayed in different controls according to the filter criterion. The search
by keyword uses the standard Sitefinity SearchResult control and is based on indexed Wiki contents.
The searches by tag and category use the master mode of the ContentView control. The rest types of
searches uses a wiki search result control based on the Sitefinity SearchResult control.

In order to view and use the different screens the user must have the corresponding permissions. To
view the Content, Comments, History and Search screens the user must have View rights for the current
Wiki. To create non-existing Wiki content, the user must have Create rights. To create a non-existing
wiki, the user must have Create rights for the whole Wiki module. In order to edit the Wiki content the
user must have the Modify rights and in order to delete the wiki content or rollback to a previous
revision the user must have the Delete rights for the current wiki.

147
USER MANUAL

10. Services
Search
The search service provides a solid and efficient way to search in your published web site pages (both
normal and external), news, blogs or any other searchable module. It is composed of several search
Indexing Clients. The Indexing Clients provide URLs to the Indexing Services. Indexing Clients (such as
Blogs, News, Pages, etc.) are classes which implement the IndexingClient interface. The most important
members are:

 the event Index which is fired along with new URLs to index (say a news item added, a new blog
created , etc.)

Indexing Services are services that take the URLs from the IndexingClient and do the real indexing.

The last part is the Indexing Service Instances. These are the ones you can see in the Admin screen.
Basically, the user creates a new index (this means Indexing Service instance but we will use index for
the sake of simplicity), adds some details about it (name, description, search patterns) then chooses
which indexing clients will be used to “feed” this service with URLs to index.

The index can have multiple indexing clients; it can even have multiple indexing clients instances of the
same type (say 2 blogs clients but with different settings).

All data related to the Indexing Services and Clients is stored in the Sitefinity database. However, the
actual indexed URLs could be stored in a separate database. Currently, we have only one indexing
service, which uses Lucene.net engine. Lucene.net stores its indexes in the ~/App_Data/Search folder.

148
USER MANUAL

Administrative End
To access the Search service, go to Administration > Services > Search.

Create a search index

In order to start searching your Web site, you should first specify the indexing services that will index its
pages. To create an indexing service, you need to create a search index first, following the steps below:

1. Click Add search index.

2. Type the Index Name and Description in the appropriate fields.

3. In the Search Patterns field, specify the types of pages you want the index to look into:

149
USER MANUAL

In each created search index, you should specify which index sources the index will look into.
To add an index source:

1. Click PageIndex.

2. In the What to index part, set the properties for each client according to the client type:
 Starting node to index: set the path to the parent page from which to start indexing
 Index non-public pages: select if you want to index pages for which anonymous access is
denied.
 Auto Index: select if you want to reindex a page automatically when the page is published.

When you create the new index, it is displayed in the All Indexes list. You should click the Start
indexing link button so that the pages are indexed for the first time and Search public controls can work
properly. Click again to force reindexing.

150
USER MANUAL

Edit a search index

1. Choose the search index you want to edit.

2. Click Edit this index to open the item editor.

3. You can modify the index details (name, description and search patterns) and add/delete
indexing sources.

4. Click Save changes when you are done.

Public End
There are two controls that should be placed on the page to enable the search feature for your Web site.

 The Search Box control is used to enable the site users to enter their keywords and search for
them in the site index. It contains the search box and search button
 The Search Results control displays the results retrieved for the keywords entered by the user
in the search box. It does the actual searching.

To insert a Search Box control follow these steps:

1. On the top navigation, click pages

2. Choose a page where you would like users to search for content

3. Click Edit this Page if localization is turned off or Edit this Language Version is localization is
turned on in Sitefinity

4. From the right hand side of the page, drag and drop a search box onto the page

5. Click edit on the control

6. Select a page where you’d like to see the search results

7. Select the search index you’d like for this search box

151
USER MANUAL

8. Save or publish the page, based on your workflow requirements

9. Choose a page where you would like to display search results

10. Click Edit this Page if localization is turned off or Edit this Language Version is localization is
turned on in Sitefinity

11. From the toolbox on the right, drag and drop a search results control

12. Save or publish the page, based on your workflow requirements

152
USER MANUAL

RSS Feeds

With the Sitefinity RSS service you can easily feed content as RSS data. Sitefinity supports RSS feeds for
content created in Pages, Forums, Events, Blogs and News modules. Through RSS feeds, your blogs and
news articles can become available to other sites or individual subscribers, letting people view the latest
updates. The syndication settings determine whether or not XML syndication feeds will be available for
the content posted to a blog.

To have RSS 2.0 syndication for content in your site, there must be an RSS Provider implemented for
that specific content. Currently, there are two RSS providers that allow syndicating the blogs and news
you create with Sitefinity.

If you need to implement RSS channel providers for your own modules, look at the Developer Manual:
Services > RSS Implementation.

Administrative End
To access the RSS service, go to Administration > Services > RSS Feeds.

153
USER MANUAL

154
USER MANUAL

Create an RSS feed

To create an RSS feed, follow the steps below:

1. Click Create new feed.

2. Type a name for your feed in the Feed name field.

3. Type a phrase or sentence to describe the feed in the Feed description field.

4. In the Feed URL field, type the path to the .rss file that the procedure creates. The path can be
either absolute (for example http://mydomain/MyBlogs.rss) or relative (for example
~/MyBlogs.rss).

5. For the Channel page field, select the page you want the user to be redirected to when s/he
clicks the RSS feed title in an RSS reader. This is usually the page containing the Post List or
News List control.

6. At the next step, you need to specify the content to syndicate by configuring at least one channel.

155
USER MANUAL

A. To syndicate content created in the News module:

i. Expand News Channel.

ii. Select the news to syndicate.

iii. Set the following channel properties:

 Article page – select the page in which the news article will open when the RSS
item title is clicked. This is usually the page containing the Single News control.

 Items count – type the number of news articles to display in the channel

 Item structure – select the type of feed to display: Full Article, Title and Summary
or Title only.

 Summary length – enter the number of characters to display in the summary

156
USER MANUAL

B. To syndicate content created in the Blogs module:

i. Expand Blogs Channel.

ii. Select the blogs to syndicate.

iii. Set the following channel properties:

 Post page – select the page where the post will open when the RSS item title is
clicked. This is usually the page containing the Single Post control.

 Items count – type the number of items (posts) to display in the channel

 Item structure – select the type of feed to display: Full post, Title and Summary
or Title only.

 Summary length – enter the number of characters to display in the summary

7. Click Create this feed.

157
USER MANUAL

Edit an RSS feed

Click Edit this feed in the list of feeds to modify feed properties.

Public End
In order to provide RSS syndication for content in your site, you need to put an RSS Feed control on a
Web page. It is very similar to the Hyper Link control but apart from creating the link, it also inserts a
link tag in the head section which shows that the page is in an RSS feed.

To add the RSS Feed control to a page, do the following:

1. Go to Pages > Site Map.

2. In the site map, click to select the page where you want to insert the control.

3. Click Edit this page.

4. Expand the Add Controls toolbox and then the RSS Feeds section.

5. Drag and drop an RSS Feed control onto the page.

6. Click Edit in the control header.

7. In the Text field, type the text to display as link.

8. For the NavigateURL field, select the RSS feed. The path to the .rss file will appear in the text
field.

158
USER MANUAL

Tools
Sitefinity offers site export tool, so your website can easily be reused. For more information, please read
Exporting Web Sites as Templates.

11. Users and Roles


Overview

Sitefinity users (also referred to as CMS Users) are users who can conduct content management and/or
administrative tasks with a given Web site project. Such users can be managed by any user who is
granted the Manage Users permission.

A user role is a group of users associated with a set of user privileges. Roles are an efficient way to
manage permissions for groups of users as they classify users with similar characteristics and
responsibilities. Roles also determine which portions of CMS a user can view.

There is one role that is automatically created with each new Sitefinity project: the Administrators role.
The admin user is assigned to it by default and granted full global, modules and site map permissions.
You cannot:

 restrict the permissions granted to the Administration role

 delete the Administrators role

 delete the last user in the Administrators role.

You can define the set of privileges for each role and assign users to roles. All users assigned to a given
role inherit the permissions defined for that role. A user can be assigned zero, one, or many roles.

For example, Josh belongs to the Editors role that allows him to edit pages. However, the administrator
decides to allow Josh to edit post comments, too. So, the administrator should choose between:

 creating a new role where this particular permission is allowed and adding Josh to it.
or
 modifying the Editors role and granting all users assigned to it this additional permission.

At the Administration > Users tab, you can:

 create roles and user accounts

 modify user profiles

 view and sort users

159
USER MANUAL

 delete users and roles

 assign users to roles

 remove users from roles

160
USER MANUAL

Creating a User Account

Follow the steps below to create a new user. We assume that the currently logged user belongs to the
Administrators role.

1. Go to the Administration > Users. You will see a list of all available users.

2. Click Create user.

3. A form with the user profile fields opens.


All fields in the Membership Info section are required.

4. Enter the user details.

5. Assign the user to role(s) by checking the role(s) in the checkbox list. You can also do that later.

161
USER MANUAL

6. Click Create this user.

7. The new user is shown in the list:

162
USER MANUAL

Adding User Details

You can extend the user profile with additional fields from the application web.config file. Follow the
steps below to add the field Nickname.

1. Open the application web.config file. Find this section and add the new profile property:

<profile defaultProvider="Sitefinity">
<providers>
<clear/>
<add name="Sitefinity" connectionStringName="DefaultConnection"
applicationName="/"
type="Telerik.DataAccess.AspnetProviders.TelerikProfileProvider,
Telerik.DataAccess"/>
</providers>
<properties>
<add name="FirstName"/>
<add name="LastName"/>
<add name="Nickname"/>
</properties>
</profile>

2. To display the field at the Administration > Create/Edit User screens, open the
~/Sitefinity/Admin/CmsAdmin/Users.aspx file add the lines in red:

A.
<cc1:ManageUsers runat="server" ID="manageUsers">
...
<InsertTemplate>
...
<div class="workArea">
<div class="mainForm">
...
<fieldset class="userinfo set">
<cc1:ManageProfile ID="manageProfile" runat="server"
Mode="Insert">
<InsertTemplate>
<ol class="setIn">
<!-- Add the new profile field HERE. For example:
<li>
<cc2:FieldLabel ID="lblNickname" runat="server"
Text="Nickname"
TargetID="Nickname"></cc2:FieldLabel><asp:TextBox
ID="Nickname"
runat="server"></asp:TextBox>
</li>

-->

163
USER MANUAL

B.
<cc1:ManageUsers runat="server" ID="manageUsers">
...
<EditTemplate>
...
<div class="workArea">
<div class="mainForm">
...
<fieldset class="userinfo set">
<cc1:ManageProfile ID="manageProfile" runat="server"
Mode="Insert">
<EditTemplate>
<ol class="setIn">
<!-- Add the new profile field HERE. For example:
<li>
<cc2:FieldLabel ID="lblNickname" runat="server"
Text="Nickname"
TargetID="Nickname"></cc2:FieldLabel><asp:TextBox
ID="Nickname"
runat="server"></asp:TextBox>
</li>
-->

3. To allow users to change their nickname in My Profile, open the


~/Sitefinity/Admin/CmsAdmin/MyProfile.aspx file and add the field as shown below:

<asp:MultiView runat="server" ID="MultiView1">


<asp:View runat="server" ID="ProfileView">
<div class="workArea insert">
<div class="mainForm">
...
<fieldset class="userinfo set">
<cc1:ManageProfile ID="manageProfile" runat="server"
Mode="edit">
<EditTemplate>
<ol class="setIn">
<!-- Add the new profile field HERE. For example:
<li>
<cc2:FieldLabel ID="lblNickname" runat="server"
Text="Nickname"
TargetID="Nickname"></cc2:FieldLabel><asp:TextBox
ID="Nickname"
runat="server"></asp:TextBox>
</li>
-->

164
USER MANUAL

Editing User Details


1. Click the Profile link in the list of users.

2. The user profile form opens. Apply your changes. You cannot change the Username and
Password. When you are done, click Save user info.

165
USER MANUAL

Managing Users and Roles

Click a role in the left pane and all users assigned to it will be displayed:

From here, it is most convenient to:

a. remove users from the current role;


b. delete users;
c. assign users to a different role;
d. edit user profiles.

166
USER MANUAL

Deleting a User

To delete a user, click the trashcan icon in the list of users. Any content modifications made by the user,
even not yet approved will be saved.

You can perform group deletion by selecting and clicking the Delete link or trashcan icon above the list.

167
USER MANUAL

Changing Current User Details

Each Sitefinity user can change their user profile.

To edit your email, first name and last name:

5. Log in Sitefinity.

6. Click My Profile in the top right corner of the screen:

7. The user profile form opens. Apply your changes. You cannot change your username.

8. Click Save user info.

168
USER MANUAL

To change your password:

6. Click the Change Password link in the left pane.

7. Enter your old password.

8. Enter your new password.

9. Re-enter your new password.

10. Click Change password.

169
USER MANUAL

Creating a Role

Follow the steps below to create a new Sitefinity user role. We assume the currently logged user is
assigned to the Administrators role.

1. Click the Administration tab.

2. Click the Create a role link in the left pane.

3. Type the desired role name:

4. Click Create.

170
USER MANUAL

Deleting a Role

Follow the steps below to delete a user role. We assume the currently logged user is assigned to the
Administrators role.

1. Click the Administration tab.

2. Click the Manage roles link in the left pane.

3. You will see a list of all available roles.

4. Click the trashcan icon next to the role you want to delete.

You cannot delete a role to which there are users assigned. You can use the View Users link to
temporarily remove users from the role you want to delete.

171
USER MANUAL

12. Permissions
Permissions are rights that define the type of actions a given user can perform. If a Sitefinity user does
not have any permission, they can only navigate through the public part of the site.

There are two explicit permission settings in Sitefinity: Allow and Deny.

There is also an implicit deny setting available: Unset.

 Deny
Denies authorization for the user role to perform the action stated. Deny is the most powerful
permission setting in Sitefinity. If a user belongs to a role that has a specific permission set to
Deny, that user cannot perform that function, even if he or she belongs to another role that has
the same permission set to Allow.

 Allow
Grants authorization for the user role to perform the action stated. Allow is the second-most
powerful permission setting in Sitefinity and the one most frequently set.

 Unset
By default, most permissions in Sitefinity are not set to either Deny or Allow. The permissions
are left unset, which implicitly denies user roles authorization to perform the action specified.
However, because the permission is neither explicitly set to Deny nor explicitly set to Allow,
authorization for that permission can be inherited from other roles to which the user is assigned.

 Inheritance
Permissions in Sitefinity are inheritable. This is why if a permission is Unset for a given user in
one role and explicitly set for another role the user is assigned to, the user inherits the Allow or
Deny for that permission.

When certain permissions are set for the site map, the permissions for the pages are the same
(inherited) by default.

There are several types of permissions:

 Global Permissions

 Module Permissions

 Site Map/Pages Permissions

 Live Pages Permissions


Permissions that apply to the users assigned to a public user role. These permissions are set if a
page will be accessible by the members of a public user role or if a secured page will be included
in the navigation controls, for example the RadTreeView and RadMenu controls.

172
USER MANUAL

Global Permissions
These are privileges to manage users, roles, permissions and files. By default there is one administrator
user who is granted full global permissions, that is, his permissions are set to “unrestricted”.

1. Manage users allows you to:


 view the Administration > Users tab
 create user accounts
 edit user details
 assign users to roles
 remove users from roles
 delete users
 create user roles
 delete roles with no users in them

2. Manage permissions allows you to:


 view the Administration > Permissions tab
 manage global, modules, site map and pages permissions.

173
USER MANUAL

3. Manage files allows you to:


 view the Files tab
 upload, copy, move, rename and delete files/folders.

4. Edit templates allows you to:


 view the Templates tab
 upload master pages, duplicate, delete, rename and edit templates.

5. CMS access allows you to access the Sitefinity backend

174
USER MANUAL

Module Permissions

These allow the site administrators to control the management of third party controls that support this
functionality. These permissions apply to all content items and not to a single item as in pages.

To set the permissions for a whole module, go to the respective module tab and click the Permissions
link in the left pane. Select a role in the dropdown list and define the permissions for the users assigned
to it.

175
USER MANUAL

1. View allows you to see the module tab and all content items.

2. Create allows you to add new content items and edit your own items.

3. Modify allows you to edit content items created by other users.

4. Delete allows you to remove content items.

5. Change Permissions allows you to set the user permissions for the whole module.

176
USER MANUAL

Site Map Permissions


Permissions granted to control the management of the whole Web site content. These permissions are
inherited as page permissions by default.

To set the permissions for all the pages, go to the Pages > Site Map tab. Select All Pages and click the
Permissions tab on the right. Select a role in the dropdown list and define the permissions for the users
assigned to it.

1. View allows you to view draft and published pages.


This permission should always be set to Allow.

2. Create allows you to create new pages.

3. Modify allows you to edit pages, but not page properties.

4. Delete allows you to delete pages.

5. ChangePermissions allows you to manage user permissions.

177
USER MANUAL

6. ChangeProperties allows you to edit page properties.

7. Approve allows you to approve or decline page modifications.

8. Publish allows you to publish pages.

9. ModifyLayout allows you to change page Template and Theme. Modify must also be granted.

178
USER MANUAL

Page Permissions
Permissions given for a page to control the management of the page content and controls content. All
permissions set for the site map are inherited as page permissions. To change this, click the Break
inheritance link.

To set the permissions for a page, go to the Pages > Site Map tab. Select the page in the site map and
click the Permissions tab on the right. Select a role in the dropdown list and define the permissions for
the users assigned to it.

1. View allows you to view draft and published pages.


This permission should always be set to Allow.

2. Create allows you to create new pages.

179
USER MANUAL

3. Modify allows you to edit pages, but not page properties.

4. Delete allows you to delete pages.

5. ChangePermissions allows you to change rights granted to users.

6. ChangeProperties allows you to edit page properties.

7. Approve allows you to approve or decline page modifications.

8. Publish allows you to publish pages.

9. ModifyLayout allows you to change page Template and Theme. Modify must also be granted.

If you want to secure a page and restrict the access to it, you can use the Anonymous access property:

1. Go to Pages > Site Map.

2. Click to select the page in the site map.

3. Click the Properties tab.

4. In the More Options section, find Anonymous access.

5. Select Deny to restrict anonymous user access to the page and require authentication.

6. Set the View page permission for the role whose access you want to restrict.

180
USER MANUAL

13. File Manager


The Sitefinity File Manager displays the hierarchical structure of folders and files in your project. Using
it, you can create, copy, move, upload, rename, and delete files and folders.

Only users who are granted proper permissions will be able to access the File Manager.

You need to add impersonation for the ASPNET account in the project web.config file to enable the File
Manager and to access the application file system. The granted access will be in accordance with the
permissions of the impersonated user.

In order to open the File Manager, go to the Files tab.

 To create a folder, such as the ViewTemplates folder, right-click to select an existing folder and
click New Folder from the context menu. The new folder is displayed with the default name New
Folder. The File Manager automatically appends a number in brackets to the end of the name if
a folder with name already exists.

 To copy a folder, right-click to select it and from the context menu, select Copy.

 To move a file or folder, first select it and then drag it to an existing folder.

181
USER MANUAL

 To rename a file or folder, right-click the folder or the whole row with the file you want to
rename and select Rename from the context menu. Type the name and press Enter or click
outside the textbox.

 To delete a file/folder, click to select the entire file/folder row and then select Delete from the
context menu.

 To navigate to the parent folder, click Folder Up.

 To upload files, first select an existing folder and click Upload files. In the Upload file dialog,
browse to select a file and click the Upload button. If you need to upload more than one file, click
the Add button and select another file. To exit the Upload file dialog, click Cancel.

Structure of a Sitefinity Site

182
USER MANUAL

Sitefinity File Manager: Visual Studio:

1. The Application root folder contains the login and registration pages and the web.config file
that control the overall configuration of your Sitefinity installation.

2. The App_Browsers folder contains the browser definition file where we have inserted an
HtmlForm adapter.

3. The App_Data folder contains the database where Sitefinity stores the pages and controls used
by the sites that it manages. By default, this is a SQL Server 2005 or 2008 database named
Sitefinity.mdf.

4. The App_Master folder contains the master pages that are available for use by pages in your
Sitefinity-managed Web sites. Each master page in the folder corresponds to one or more page
template choices when you are creating a new page in Sitefinity. You can add your own master
pages to this folder to create additional master page types within Sitefinity, which in turn map to
page templates. You must not delete the Dummy.master file as it is required for the proper
functioning of the system.

5. The App_Themes folder contains the themes that are available for use by pages in your
Sitefinity-managed Web sites. Each theme in the folder corresponds to a choice when you are
creating a new page in Sitefinity. You can add your own themes to this folder to create additional
themes within Sitefinity.

6. The bin folder contains all .dll files.

7. The Files folder is created automatically by Sitefinity. This is where all your files will be
uploaded if you use the Document, Media or Flash managers in the RadEditor.

183
USER MANUAL

8. The Images folder is created automatically by Sitefinity. This is where all your images will be
uploaded if you use the Image manager in the RadEditor.

9. The Sitefinity folder contains the files that make up the Sitefinity public controls’ interfaces, as
well as these subfolders:

 The Admin folder contains all files that make up the administrative part of Sitefinity. It will
allow only authenticated users to request files from this folder.

 The App_LocalResources folder contains local resources which are mapped to the upper
level files.

 The Common folder contains image files used by the Web pages for the public user interface.

 The ControlTemplates folder contains the templates used by the public controls. To change
the markup or static data for a public control, modify the respective template.

 The User Controls folder contains the site navigation user controls and their VB versions.

How to Upload Files to the Server and Display Them to Users

Using the Images and Documents module, files are uploaded as binary data to the database. You can
upload files as static files, which will not be inserted in the Images and Documents module, and display
them. To upload the files, follow these steps:

1. Login to Sitefinity
2. On the top navigation, click Files
3. Click on a folder

4. Click upload files

To show links to files, follow these instructions:

1. Login to Sitefinity
2. On the top navigation, click on Pages > Sitemap
3. Click on a page
4. If localization is turned on, click Edit this Language Version or Edit if localization is turned off
5. From the right hand side of the screen, drag and drop a Generic Content module:

184
USER MANUAL

6. On top of that module, click edit


7. Click the document icon

8. In the dialog, click Select from Already Uploaded Documents


9. Select the Files tab

10. Select the file and click I’m done

Sitefinity will display a link to the file, when these steps are finished.

185
USER MANUAL

14. Caching
Sitefinity comes with inbuilt caching capabilities. There is a section in the web.config file which lists the
caching providers and their settings. There is one caching provider currently available:

<caching defaultProvider="memoryCache">

<providers>
<add name="memoryCache"
type="Telerik.Caching.MemoryCachingProvider,
Telerik.Framework" />
</providers>
<cacheDependency mode="InMemory"/>
</caching>

Caching is applied on a page level.

Page Caching
To enable caching for at the CMS level you need to apply the following settings:

1. Find the <cms> section in the application web.config file.

2. Add value “pageCacheProvider” and set its attribute to one of the caching providers listed
in the caching section of web.config, for example “memoryCache”:

<cms defaultProvider="Sitefinity" pageExtension=".aspx"


pageCacheProvider="memoryCache" . . . >

3. If you want to apply ASP.NET caching to pages, set the value of “pageCacheProvider” to
“*ASPNET*”.

4. If you want to turn off caching for pages, set the value of “pageCacheProvider” to
“*NO*CACHE*”.

You can also cache pages individually by following these steps:

1. Go to the Pages > Sitemap tab


2. Either create a page or click on the page properties tab

186
USER MANUAL

3. Click More Options and check off the box for enable caching:

187
USER MANUAL

15. The Application Configuration


Overview

Many aspects of the application can be configured through its web.config file.

The web.config is an XML file that resides in the Web site’s root directory. This file contains
configuration settings and application-wide data, such as database connection strings, custom error
messages and culture settings. When you need to change any of these settings, you only need to edit the
web.config file, you do not need to modify the code or recompile your application.

For more information on the Web.config file, please review this article.

Configuring Localization - Overview


The Sitefinity Standard Edition supports multilingual sites and each one needs to have a default
language. Although you can only have one default language per Web site, Sitefinity supports an
unlimited number of language versions of a website. Localization works on site, page and the module
level and uses the same two letter abbreviations from the CultureInfo class.

Site Localization
Sitefinity allows end users to pick the site’s language:

Users can also choose which version of a page to edit by following these steps:

1. Login to Sitefinity
2. Click on Pages
3. Choose the appropriate language:

To configure localization for pages, follow these steps:


1. Find the <localization> section in the application web.config file.

2. First, you should set the persistenceMode attribute to either "QueryString" or


"PathPrefix" to define the way URLs will be created:

188
USER MANUAL

<localization defaultProvider="Sitefinity"
persistenceMode="PathPrefix"
defaultCulture="en" cultures="en, fr">
Notice that the default culture is set to English. If you would like to have another default language, set
the default culture property to the language’s two letter prefix:
<localization defaultProvider="Sitefinity"
persistenceMode="PathPrefix"
defaultCulture="es" cultures="en, fr, es, de, bg">

3. Save the web.config file and you will see the language selector in the top right corner of the
screen. The order of languages in the dropdown is the same as set for the value of the cultures
attribute.

In the above example, setting the defaultCulture attribute to es does not ensure that the
selected language in the dropdown (and hence the language version of the page that opens) is
always Spanish. This depends on the browser settings: the default language set in the client
browser definition overrides the defaultCulture definition in the application web.config.
To force a specific culture, independent from the client browser settings and locale, do the
following:

1. Find the localization element in the application web.config.


2. Add the autoSetClientLanguage attribute and set it to false:

<localization defaultProvider="Sitefinity"
autoSetClientLanguage="False"
persistenceMode="PathPrefix"

Mapping Domain Name and Extension to Culture


To Map a Domain Name to Culture, follow these steps:
1. Find the <localization> section in the application web.config file.

2. Set the persistenceMode attribute to "DomainName".

3. Create a new section which contains the domains and the cultures to which they are mapped,
surround it with opening and closing tags: “<cultureMappings>”,
</cultureMappings>”.

4. Insert a line for each domain you want to map, for example:
<add key="www.mydomain.com" culture="en" />,
where “key” is the domain name you want to map, and “culture” is the culture to which
you want to map it.

To illustrate, this is what the web.config file will contain after the update:

<localization defaultProvider="Sitefinity"

189
USER MANUAL

persistenceMode="DomainName" defaultCulture="en" cultures="en, de,


fr">
<providers>
<clear/>
<add name="Sitefinity"
type="Telerik.Localization.Data.DefaultProvider,
Telerik.Localization.Data"
connectionStringName="DefaultConnection"/>
</providers>
<cultureMappings>
<add key="www.mydomain.com" culture="en" />
<add key="www.mydomain-de.com" culture="de" />
<add key="www.mydomain.fr" culture="fr" />
</cultureMappings>
</localization>

5. Save the web.config file.

To Map a Domain Extension to Culture, follow these steps:


1. Find the <localization> section in the application web.config file.

2. Set the persistenceMode attribute to "DomainExtension".

3. Create a new section which contains the domains and the cultures to which they are mapped,
surround it with opening and closing tags:“<cultureMappings>”,
</cultureMappings>”.

4. For each domain you want to map insert a line, for example:
<add key="com" culture="en" />,
where “key” is the domain extension you want to map, and “culture” is the culture to
which you want to map it.

To illustrate, this is what the web.config file will contain after the update:

<localization defaultProvider="Sitefinity"
persistenceMode="DomainExtension" defaultCulture="en" cultures="en,
fr, de, bg">
<providers>
<clear/>
<add name="Sitefinity"
type="Telerik.Localization.Data.DefaultProvider,
Telerik.Localization.Data"
connectionStringName="DefaultConnection"/>
</providers>
<cultureMappings>
<add key="com" culture="en" />
<add key="co.uk" culture="en" />
<add key="fr" culture="fr" />
</cultureMappings>

190
USER MANUAL

</localization>
Please, note that Sitefinity maps automatically a domain extension to a culture when there is a
match between the two. You do not need to set the mapping explicitly in such cases.

5. Save the web.config file.

Module Localization
You can localize the following modules:
 Generic Content
 News
 Blogs
 Events
To create different language versions of a module, follow these steps:
6. Find the <cmsEngine> section in the application web.config file and set the allowLocalization
attribute to true.

<cmsEngine defaultProvider="MODULE_NAME">
<providers>
<clear/>
<add name="Generic_Content"
visible="True"
defaultMetaField="Name"
securityProviderName=""
allowLocalization="True"
...
Setting this enables you to create versions of the content items for all the site cultures and
display them by switching the languages in the selector on the live web site.

7. Find the <metaFields> section and set the localizable attribute to true for all fields that you
want to localize.

To make the Description field of the Generic Content module localizable, for example, add the
text in red:
<add key="Generic_Content.Description" valueType="LongText"
visible="True" searchable="False"
localizable="True"
sortable="True"
defaultValue="Add description here"/>

Here is the end result in English:

191
USER MANUAL

Here is the end result in German:

By localizing fields, you ensure that field can have a foreign language equivalent. In the example above,
the content’s title is not localizable, so when you change to the French version, for example, the title will
still say language. The content’s description field, however, will have a French language equivalent.

The fields that are used to create the URL, for example Name for the Generic Content module, should not
be localized:
<add providerName="Blogs"
publicationDateField="Publication_Date"
urlRewriteFormat="[Publication_Date]/[Title].aspx"
If you need to make these kinds of fields localizable, you can do either of the following:

1. Use ID for URL rewriting:

urlRewriteFormat="[Publication_Date]/{ID}.aspx"

2. Use GUID for URL rewriting:

urlRewriteFormat="[Publication_Date]/{GUID}.aspx"

192
USER MANUAL

Configuring Workflow and Versioning


Sitefinity supports workflow on the module and the pages level.

Page Level
To enable workflow on the page level, follow these steps:

1. Set the allow page workflow attribute to true in the Web.config:

<add connectionStringName="DefaultConnection"
allowPageHistory="true"
allowPageWorkflow="true" cachingProviderName="ASPNET"
name="Sitefinity"
type="Telerik.Cms.Data.DefaultProvider, Telerik.Cms.Data"
/>

2. Save the Web.config

Module Level
To configure workflow at the module level, follow these steps:

1. Locate this line of code in your Web.config:

<cmsEngine defaultProvider="Generic_Content">

2. Find the module’s provider (The Generic Content module is given as an example):

<add name="Generic_Content"
urlRewriteFormat="[Publication_Date]/[Name].aspx"
urlDateTimeFormat="yy-MM-dd" urlWhitespaceChar="_" visible="True"
defaultMetaField="Name" securityProviderName=""
allowLocalization="True" allowVersioning="True" allowWorkflow="True"
allowComments="false" commentsModeration="true"
versioningProviderName=""
connectionStringName="GenericContentConnection"
type="Telerik.Cms.Engine.Data.Providers.DefaultProvider,
Telerik.Cms.Engine.Data" />

3. Save the Web.config

Page History
This feature is not available in the Sitefinity Community Edition.
Sitefinity stores the history of content modifications. The site administrator can easily track the
modifications, the user identity and the time of the changes. Each time some content is modified, the
changes are saved as a new version of the original content. The original content is saved in the database
and can easily be restored.

193
USER MANUAL

By default, page history is enabled. To disable it, open the project web.config file, find this line and set
the allowPageHistory attribute to false:
<add connectionStringName="DefaultConnection"
allowPageHistory="false"
allowPageWorkflow="false" name="Sitefinity"
type="Telerik.Cms.Data.DefaultProvider, Telerik.Cms.Data" />
To preview and roll back to previous versions of a page:
1. Go to Pages >Site Map.

2. Click to select the page in the site map and go to the History tab.

3. Click View to open a preview of an older version of the page.

4. Click Rollback to substitute the current template with an older version.

Module History
Sitefinity stores all versions of items created within the Generic Content, News and Blogs modules. Each
time some content is modified, the changes are saved as a new version of the original content. The
original content is saved in the database and can easily be restored. The site administrator can easily
track those modifications, the user identity and the time of the changes.
By default, module history is enabled. To disable it, open the application web.config file and find this
section:
<cmsEngine defaultProvider="Generic_Content">.
In the <add> element for the respective module, find the allowVersioning attribute and set it to False.
This is what it should look like for the News module:

<add name="News"
defaultMetaField="Title"
visible="False"
securityProviderName=""
allowVersioning="False"
...

194
USER MANUAL

URL Rewriting

By default, the URL Rewriter is switched off. To switch it on, you need to do the following changes in the
web.config file:

1. Add a configuration section element <configSections>:

<configuration>

<configSections>
<sectionGroup name="telerik">

<section name="urlrewrites"
type="Telerik.Cms.Web.AdvancedUrlRewriter, Telerik.Cms"/>
</sectionGroup>
</configSections>

2. In the <httpModules> section, replace the default CmsHttpModule with


CmsHttpModuleUrlRewrite (shipped with Sitefinity)

<httpModules>
<add name="Cms" type="Telerik.Cms.Web.CmsHttpModuleUrlRewrite,
Telerik.Cms"/>
</httpModules>

3. Set up your rules. Add an <urlrewrites> section:

<configuration>
<telerik>

<urlrewrites>
<!-- Add your rule elements here -->
<rule>
<url>[input URL pattern]</url>
<rewrite>[replaced URL]</rewrite>
</rule>
</urlrewrites>

This section above sets the rules for rewriting the URLs and you can add one or more rules here. These
rewrite rules are evaluated from top to bottom. If a match is found, the URL is rewritten and the search
through the rewriting rules terminates.

Rewriting is based on the regular expressions technology and it’s similar to using the RegEx.Replace()
method in .NET. The <url> is a pattern expression and <rewrite> is a replacement string.

Please refer to Regular Expressions as a Language for more information about Regular Expressions.

195
USER MANUAL

Example:
If you have a products page (products.aspx) that will manage each product, requesting a Product Id
(ProdId) in the query string, and you want to access each product without using a query string, you may
have the following rule in <urlrewrites>:

<urlrewrites>
<rule>
<url> product(.*)\.aspx </url>
<rewrite> Products.aspx?ProdId=$1</rewrite>
</rule>
</urlrewrites>

This will rewrite the URLs in the following manner:

URL Will be rewritten to:


product1.aspx products.aspx?ProdId=1
product2.aspx products.aspx?ProdId=2
productAny.aspx products.aspx?ProdId=Any

Apart from the advanced method described above, Sitefinity provides one more way to rewrite URLs,
which does not require changes to be made in the application web.config file. You can specify more than
one URL for a page from the Page Properties tab. For more information, please refer to 7. Working with
Web Pages.

Note also that it is not possible to use the URL rewriter to create pages without file extension. You can do
that by setting wildcard application mappings in IIS or by configuring 404 redirection. For details about
each approach, please refer to Wildcard Application Mappings and Extensionless URLs topics.

Setting Custom Error Pages in the Web.config

Custom error pages are created so that end users, primarily, don’t see ASP.NET exception messages.
Instead, they can be brought to a user friendly static page informing them of an error and that a software
developer shall fix it.

There are several ways to implement custom error pages. When you first download Sitefinity, you will
see a <customErrors> section in the application web.config file, which looks like this:

<customErrors mode="RemoteOnly"/>

The required mode attribute can be one of the following:

 On: error details are not shown to anybody, even local (logged in) users. If you specify a custom
error page, it will always be used.

196
USER MANUAL

 Off: error details are shown to everyone, both local and remote users. If you specify a custom
error page, it will not be used.

 RemoteOnly: local users will see detailed error pages with a stack trace and compilation details,
while remote users will be presented with a concise page notifying them that an error has
occurred. If a custom error page is available, it will be shown to the remote users only.

The optional defaultRedirect attribute specifies the default URL to direct a browser to if any error
occurs. The URL to a custom error page may be relative (~/Error/PageNotFound.aspx) or absolute
(http://www.yoursite.com/errors/PageNotFound.aspx).

A generic error is displayed if the defaultRedirect attribute is not specified.

The <customErrors> tag may also contain several <error> subtags for more granular error
handling. Each <error> tag allows you to set a custom condition based upon an HTTP status code. For
example, you may display a custom 404 for missing pages and a general error page for all other
exceptions:

<customErrors mode="RemoteOnly"
<error statusCode="404" redirect="~/Errors/PageNotFound.aspx" />
<customErrors>

PageNotFound.aspx can be a page managed by Sitefinity or a static page. For more info on custom
errors, please read this MSDN article.

197
USER MANUAL

Search Input Validation

When users enter special symbols in the Search Box, Sitefinity replaces them with symbols recognized
by the Search or prompts the users with a warning message.

There are special symbols replace and escape rules set by default. To add a new replace or escape rule,
follow these steps:

1. Find the <searchInputValidation> section in the web.config file.


2. Add a new line:
......
<add matchPattern="[regex]" replacementString="[regex]"
enabled="true" matchAlert="[Text of alert message.]."/>
......
where:
a. matchPattern – regular expression, contains the values for which the rule is created;
b. replacementString – regular expression, contains the values which should replace the
ones in matchPattern; if this attribute is empty, users will see a prompt message with the
text specified in matchAlert.
c. enabled – indicates whether the rule is enabled or not;
d. matchAlert– contains the content of the prompt message which appears when there is
no value for replacementString.

The same logic can be applied when modifying the existing rules.

Searching in Metafields
When a user is searching for a news story, you might want certain fields to be unsearchable including
the thumbnail field. To define which fields are searchable, follow these steps:

1. Find the <metaFields> section in the web.config file.

2. For each meatafield set the value of the attribute “searchable” to true or false

198
USER MANUAL

Configuring Medium Trust

There are a couple of things you need to do to so Sitefinity CMS could work in medium trust.

1. Make sure that all sections under <sectionGroup name="telerik"> have


requirePermissions=”false”:
<section name="dataAccess"
type="Telerik.DataAccess.Configuration.SectionHandler, Telerik.DataAccess"
requirePermission="false"/>
2. Make sure that the workflow is disabled:
<add connectionStringName="DefaultConnection"
allowPageHistory="true"
allowPageWorkflow="false"
3. Make sure that the health monitoring (error event logging) is disabled:
<healthMonitoring enabled="false" heartbeatInterval="0">

In our next major version, the workflow will be available for medium trust as well.

Extensionless URLs
This topic describes an approach that handles HTTP 404 errors which you get if you request an
extensionless URL like http://localhost/YourWebSite/home where home is set as a Page Group in
Sitefinity.

The first thing you need to do is to set pageExtension property to empty in the web.config file:

<cms defaultProvider="Sitefinity" pageExtension="" disabled="true"


pageEditorUIMode="Overlay">

When you request an extensionless URL, you get HTTP 404. This means IIS receives the request but it
serves the page configured for HTTP 404. It does not send the request to ASP.NET ISAPI. So, if you can
forward all HTTP 404 to ASP.NET, you can serve extensionless URLs. In order to forward HTTP to
ASP.NET ISAPI, you need to configure IIS to redirect to some .aspx extension on HTTP 404. Follow the
steps below to make Sitefinity handle the request to sf404.aspx page and rewrite the path to the
required URL.

IIS 5.x
1. Click All Programs > Administrative Tools > Internet Information Services (IIS) Manager.
2. Expand the tree on the left until you see Web Sites > Default Web Site.
3. Expand the Default Web Site folder.
4. Right-click your project virtual folder and select Properties.
5. On the Custom Errors tab, select HTTP error 404.
6. Click Edit Properties.
7. From the Message Type list, choose URL.
8. In the URL field, type the path to sf404.aspx in your project:

199
USER MANUAL

9. Click OK.

IIS 6.x
1. Click All Programs > Administrative Tools > Internet Information Services (IIS) Manager.
2. Expand the tree on the left until you see Web Sites > Default Web Site.
3. Expand the Default Web Site folder.
4. Right-click your project virtual folder and select Properties.
5. On the Custom Errors tab, select HTTP error 404.
6. Click Edit.
7. From the Message Type list, choose URL.
8. In the URL field, type the path to sf404.aspx in your project:

9. Click OK.

200
USER MANUAL

IIS 7.0 Classic Pipeline mode


Note: The settings below should be applied when running the server in Classic Pipeline Mode and are
not required in Integrate Pipeline Mode.
Click All Programs > Control Panel > Administrative Tools >Internet Information Services (IIS)
Manager.

1. Expand the tree on the left until you see Web Sites > Default Web Site.
2. Expand the Default Web Site folder.
3. Select your Web site and in the right pane, IIS section, select Error Pages.
4. In the right pane, click Edit.
5. Change the Path Type to Execute URL and type the path to sf404.aspx in your project:

6. Click Edit Feature Settings.


7. Change the default error response to Custom error pages:

201
USER MANUAL

8. Click OK.

202
USER MANUAL

IIS 7.0 Integrated Pipeline mode


No additional changes, except setting the pageExtensions to empty string, are required.

Wildcard Application Mappings


Sitefinity supports URLs without extensions if you set wildcard application mappings in IIS.

Apart from setting wildcard application mappings, Sitefinity supports a better approach for URLs with
no extensions. As wildcard mapping makes each and every request go through ASP.NET 2.0 ISAPI
handler (including URLs with .gif, .css, .js, .html, etc.) and this inevitably worsens the performance, we
would recommend the approach described in the Extensionless URLs topic.

To set up Wildcard Application Mappings, follow these steps:


IIS 5.x

1. Click All Programs > Administrative Tools > Internet Information Services (IIS) Manager.
2. Expand the tree on the left until you see Web Sites > Default Web Site.
3. Expand the Default Web Site folder.
4. Right-click your project virtual folder and select Properties.
5. On the Virtual Directory tab, click Configuration to open the Application Configuration dialog.
6. Click Add to open the Add/Edit Application Extension Mapping dialog.
7. Browse to select the c:\windows\microsoft.net\framework\v2.0.50727\aspnet_isapi.dll
file for the value of the Executable field.
8. In the Extension field, type “ .* ” to specify all kinds of extensions.
9. Select the All verbs checkbox.
10. Clear the Check that file exists checkbox.

203
USER MANUAL

11. Click OK to close the Add/Edit Application Extension Mapping dialog.


12. Click OK to close the Application Configuration dialog.

IIS 6.x

1. Click All Programs > Administrative Tools > Internet Information Services (IIS) Manager.
2. Expand the tree on the left until you see Web Sites.
3. Expand the Web Sites folder.
4. Right-click your Web site to select Properties.
5. Click Configuration.
6. Click Insert… to open the Add/Edit Application Extension Mapping dialog.
7. Browse to select the c:\windows\microsoft.net\framework\v2.0.50727\aspnet_isapi.dll
file for the value of the Executable field.
8. Clear the Verify that file exists checkbox.

9. Click OK to close the Add/Edit Application Extension Mapping dialog.


10. Click OK to close the Application Configuration dialog.

204
USER MANUAL

IIS 7 Classic Pipeline mode

1. Click All Programs > Control Panel > Administrative Tools >Internet Information Services
(IIS) Manager.

If you are using Windows Vista, follow these steps:

1. Expand the sites folder on the left until you see Web Sites > Default Web Site.
2. Then, expand the Default Web Site folder
3. Select your website.

If you are using Windows Server 2008, expand the folders as shown below:

Please note that the W2008SQL32Bit icon shall be named differently on your machine, but the idea is the
same.

2. Click on the website, then on Handler Mappings:

3. On the right hand side of the screen, click Add Wildcard Script Map:

205
USER MANUAL

4. On the dialog that appears, browse to select the


c:\windows\microsoft.net\framework\v2.0.50727\aspnet_isapi.dll
5. Give the application mapping as name:

6. Click OK
7. On the next dialog, click yes

For more information, please view this article.

206
USER MANUAL

Configuring page extensions


When you run your web site under IIS5.x, 6.x and 7.x in classic pipeline mode, you should map the
extensions you would like to use to ASP.NET ISAPI. Otherwise, the requests to pages having extension
other than aspx will not reach Asp.Net and Sitefinity.
When you are done with the ISAPI mappings, you can change the related properties in the web.config
file.

Changing the default page extension


Changing the default page extension will force Sitefinity to create or use the CMS pages with a custom
extension.

1. Open the web.config file and find the pageExtension property.


2. Change it to the extension you want to use:
<cms defaultProvider="Sitefinity"
pageExtension=".do"
disabled="true"
pageEditorUIMode="Overlay">

Example URLs after this change:


http://mysite.com/homepage.do
http://mysite.com/news.do

Using additional extensions for your Sitefinity pages


By using the additional extensions mapping, you use pages with extensions different than the default
one. Find the <cms> node and add the following property:

<cms defaultProvider="Sitefinity"
pageExtension=".aspx"
additionalExtensions="html, do, asp"
disabled="true"
pageEditorUIMode="Overlay">

In this case, Sitefinity will accept *.html, *.do and *.asp request, as well as the default ones - *.aspx
request.

207
USER MANUAL

16. Deployment

Deploying Sitefinity to a production server


This topic provides instructions on how to migrate an existing Sitefinity project from a development
machine to a production server. You do not need to install Sitefinity on the production server. You only
need to configure the IIS properly and add all external files that you have added to the staged server
such as images, CSS or user controls and any other resources you have created.

After the migration, all CMS functionality will continue to operate as the process is a mere physical
relocation of the application.

If you do not want users to be able to modify anything in the administration, disable the administration
on the production server by deleting this folder:
C:\Program Files\telerik\Sitefinity3.x\WebSites\YourProject\Sitefinity\Admin

1. Copy or upload with FTP the project folder to the destination machine (usually in the
\Inetpub\wwwroot folder).

Source (development machine) Destination (production server)

208
USER MANUAL

2. If your Web site project uses Microsoft SQL Server database, you need to migrate the SQL
database to the new location as well.

3. Set the new folder as an ASP.NET 2.0 web application.

4. In the ASP.NET version field, select 2.0.50727.

5. Give full permissions to the ASPNET user for the ~/App_Data folder:

1. Right-click the folder and select Properties.


2. Select the Security tab.
3. Click Add... to add a user.
4. In the new dialog, click Advanced....
5. In the new dialog, click Find now....
6. Select the ASPNET user from the list of available users.
7. Go back to the Security tab, select the ASPNET user and give full permissions.
(If you are using IIS6, this user is the "Network Service” account)

209
USER MANUAL

6. (Required in Sitefinity v.3.2. Only) Add mappings for .sflb, .tmb, .template, .rss to the script maps,
following these steps:

 Right-click the newly created virtual folder My Site and select Properties.
 Click Configuration >Mappings >Add.

7. Place the LicenseFile.xml in ~/[YourProject]/Sitefinity folder.


8. Restart IIS.
9. Access the relocated project by IP address or domain name (depends on your IIS configuration).

210
USER MANUAL

Deploying Sitefinity in a Load Balanced Web Farm Environment


There is one requirement that needs to be met in order to use Sitefinity in a load balanced environment.
In the application web.config file, you need to change the cache dependency mode from InMemory to
InDatabase:

<configuration>
...
<telerik>
...
<framework>
<caching defaultProvider="memoryCache">
<providers>
<add name="memoryCache" type="Telerik.Caching.MemoryCachingProvider, Telerik.Framework" />
<add name="ASPNET" type="Telerik.Caching.AspNetCachingProvider, Telerik.Framework"
duration="120" slidingExpiration="true" />
</providers>
<cacheDependency mode="InDatabase" />
</caching>
...
</telerik>
/<configuration>

When you set the mode to InDatabase, the changes you make on one of the sites will be reflected on the
other sites.

Furthermore, if you experience any problems with the Dynamic Service Assemblies, you should move
the assembly located in [YourProject]\Sitefinity\ServiceAssemblies to the bin directory -
[YourProject]\bin.

Synchronizing images and other files between servers in the Web farm is the responsibility of your load
balancing software.

211
USER MANUAL

17. Customizing Built-In Modules

Overview
Sitefinity’s pluggable modules can be customized in a variety of ways. Additional fields can be added,
removed or even renamed. Modules can also share content with other Sitefinity websites. To customize
a module, you must edit its control template.

Control Templates

To display content, Sitefinity uses a series of user controls called control templates. Inside of these
control templates are many common ASP.NET UI controls, such as literals, labels and textboxes. By
default, these control templates are embedded inside assembles. To make changes to these control
templates, you must extract them from the assemblies and then work with the code inside the controls.

To extract a template, follow these steps:

1. Figure out which template you need:


a. If you’d like to edit the template for creating a blog post, go to Modules > Blogs.
b. Click on your blog
c. Click the create a post button
d. Notice that the route section says PostNewView:

That is the template that you need. Sitefinity navigates to different templates by routes and these
routes are hierarchical. Using the blogs module as an example, here is the hierarchy:

212
USER MANUAL

To navigate to the PostNewView, the blogs module must go to the BlogsControlPanel, then the
PostsView, then the PostNewView. This is represented by dots as you see in the route query
string above.

2. Create the following file in the ~/App_Data/Configuration directory :


Telerik.Sitefinity.Configuration.ControlsConfig.xml
3. Add the code below to that file:

<?xml version="1.0" encoding="utf-8"?>


<controlsConfig>
<viewMap>
<!--Provides user interface for creating
new blog post in the blogs module.-->
<viewSettings
hostType="Telerik.Blogs.WebControls.Admin.PostNewView"
layoutTemplatePath="~/Sitefinity/Admin/ControlTemplates/Blogs/PostNe
w.ascx" />
</viewMap>
</controlsConfig>

4. Press Ctrl + f5 to build the Visual Studio Project


5. Login to your Client.net account and click on downloads

6. Download this file:

213
USER MANUAL

7. Unzip that download and copy these files

\Sitefinity\Admin\ControlTemplates\Blogs\PostNewView.ascx
\Sitefinity\Admin\ControlTemplates\Blogs\App_LocalResources\PostNewView.ascx.resx

Into this directory in your Sitefinity project:

PostNewView.ascx - \Sitefinity\Admin\ControlTemplates\Blogs
PostNewView.ascx.resx - \Sitefinity\Admin\ControlTemplates\Blogs\App_LocalResources

8. Open the ~/Sitefinity/Admin/ControlTemplates/Blogs/PostNewView.ascx and make


changes
9. Build the project and resolve any errors

The project must be compiled (Ctrl + F5 in Visual Studio) before any changes will take effect. These
changes can include adding custom fields.

Adding Custom Fields

Overview
You can add custom fields to the Generic Content, News, Events, Images and Documents, and Blogs
modules. You can also set field properties such as visible, searchable, and sortable.

Here is an example of how to use these fields:

<add key="Generic_Content.AuthorEMail" valueType="ShortText"


visible="True" searchable="True" sortable="True" defaultValue="" />

Here is a listing of each property’s function:

• Key: This is the name of your module and it’s followed by a period and the name of the field.
• ValueType: Defines the data type for the field. It could be set to shortText, which is a string less
than 256 characters, longText, which is a string longer than 256 characters, integer, Guid and
DateTime.
• Visible: Defines whether the field is visible to the user
• Searchable: Defines whether the field is searchable in the admin, when the user clicks on the
module
• Sortable: Defines whether the field is sortable in the admin, when the user clicks on the module
• DefaultValue: Automatically populates the field with a string, if the field has no value

When you add or remove metadata, you need to reflect the changes in the respective templates located
in the ~/Sitefinity/Admin/ControlTemplates folder, so that they can take effect. For more info, please
read the Control Templates section of this guide.

214
USER MANUAL

When adding a custom field, ensure that the value of the AssociatedControlID attribute is the ID of the
textbox the label is associated with. The ID of the textbox (in this case) must be the same as the name of
the field. For example:

<asp:Label ID="Label4" AssociatedControlID="Subtitle"


runat="server">Subtitle<em id="Em1" runat="server"></em></asp:Label>
<asp:TextBox ID="Subtitle" TextMode="MultiLine" Text="Summary"
runat="server"></asp:TextBox>

The Images and Documents module uses a slightly different approach for adding these fields, which is
outlined in Adding Custom Fields to the Images & Documents Module.

Adding Custom Fields to Generic Content Based Modules


The following example uses the News module and describes the steps to create a field called “Subtitle”.
You can safely use the same logic to add custom fields to Generic Content, Blogs, and Events modules. To
be better acquainted with the field adding process, please refer to the Control Templates and the
Overview of Adding Custom Fields section of this manual.

1. To that XML file, add this code:

<?xml version="1.0" encoding="utf-8"?>


<controlsConfig>
<viewMap>
<!--Provides user interface for editing a news item in the News
module.-->
<viewSettings hostType="Telerik.News.WebControls.Admin.NewsItemEdit"
layoutTemplatePath="~/Sitefinity/Admin/ControlTemplates/News/NewsIte
mEdit.ascx" />
</viewMap>
</controlsConfig>

2. Unzip the templates download and copy these files

\Sitefinity\Admin\ControlTemplates\News\NewsItemEdit.ascx
\Sitefinity\Admin\ControlTemplates\News\App_LocalResources\NewsItemEdit.ascx.resx

Into this directory in your Sitefinity project:

NewsItemEdit.ascx - \Sitefinity\Admin\ControlTemplates\News
NewsItemEdit.ascx.resx - \Sitefinity\Admin\ControlTemplates\News\App_LocalResources

3. Open the project web.config file and in the <metaFields> collection, add this code:

<add key="News.Subtitle" valueType="ShortText" visible="True"


searchable="True" sortable="True" defaultValue=""/>

215
USER MANUAL

Now you need to take care of the screen where you edit news. This is what it looks like:

To insert the Subtitle field between the Summary and Author fields, follow these steps:

4. In your Sitefinity project, open this file : /Sitefinity/ControlTemplates/News/NewsItemEdit.ascx


5. Find this code:

<li>
<asp:Label ID="Label3" AssociatedControlID="Author" Text=""
runat="server">
<asp:Literal ID="Literal21" runat="server" Text="<%$Resources:Author
%>"></asp:Literal>
<em id="AuthorLabel" runat="server"></em></asp:Label>
<asp:TextBox ID="Author" Text="<%$Resources:Author %>"
runat="server" MaxLength="250"></asp:TextBox>
<p class="example">
<asp:Literal ID="Literal22" runat="server"
Text="<%$Resources:AuthorNote %>"></asp:Literal></p>
</li>

6. Above <li> in step 5, and add this code:

<li>
<asp:Label ID="Label8" AssociatedControlID="Subtitle"
Text="Subtitle" runat="server"></asp:Label>
<asp:TextBox ID="Subtitle" Text="" runat="server"></asp:TextBox>
</li>

216
USER MANUAL

Here is the end result:

The changes above will only appear when editing the news because edit news and create news
templates are in two different files. To update the template that creates the news, follow these steps:

1. Beneath the <viewMap> tags, add these lines of code to


Telerik.Sitefinity.Configuration.ControlsConfig.xml

<!--Provides user interface for adding new news items in the News
module.-->
<viewSettings hostType="Telerik.News.WebControls.Admin.NewsItemNew"
layoutTemplatePath="~/Sitefinity/Admin/ControlTemplates/News/NewsItemNew.a
scx" />

2. From the templates download, copy


~/Sitefinity/Admin/ControlTemplates/News/NewsItemNew.ascx and
~/Sitefinity/Admin/ControlTemplates/News/App_LocalResources/NewsItemNew.ascx.
resx into the corresponding Sitefinity directories

3. Find this code:

<li>
<asp:Label ID="Label3" AssociatedControlID="Author" Text=""
runat="server">
<asp:Literal ID="Literal21" runat="server" Text="<%$Resources:Author
%>"></asp:Literal>
<em id="AuthorLabel" runat="server"></em></asp:Label>

217
USER MANUAL

<asp:TextBox ID="Author" Text="<%$Resources:Author %>"


runat="server" MaxLength="250"></asp:TextBox>
<p class="example">
<asp:Literal ID="Literal22" runat="server"
Text="<%$Resources:AuthorNote %>"></asp:Literal></p>
</li>

4. Above <li> in step 3, and add this code:

<li>
<asp:Label ID="Label8" AssociatedControlID="Subtitle"
Text="Subtitle" runat="server"></asp:Label>
<asp:TextBox ID="Subtitle" Text="" runat="server"></asp:TextBox>
</li>

Adding Category Column


You may need to display the categories for items created in the Events, News, Blogs and Generic Content
modules and be able to filter items by category. To be better acquainted with the field adding process,
please refer to the Control Templates section.

To add the Category column in the All Items list for the News module for example, follow these steps:

1. To the XML file, add this code:

<?xml version="1.0" encoding="utf-8"?>


<controlsConfig>
<viewMap>
<!--Provides user interface for previewing a news item in the News
module.-->
<viewSettings hostType="Telerik.News.WebControls.Admin.NewsItemsList"
layoutTemplatePath="~/Sitefinity/Admin/ControlTemplates/News/NewsItemsList
.ascx" />
</viewMap>
</controlsConfig>

3. From the external templates download, copy these files

\Sitefinity\Admin\ControlTemplates\News\NewsItemList.ascx
\Sitefinity\Admin\ControlTemplates\News\App_LocalResources\NewsItemList.ascx.resx

Into this directory in your Sitefinity project:

218
USER MANUAL

NewsItemPreview.ascx - \Sitefinity\Admin\ControlTemplates\News
NewsItemPreview.ascx.resx - \Sitefinity\Admin\ControlTemplates\News\App_LocalResources

6. Open this file:


~/Sitefinity/Admin/ControlTemplates/News/NewsItemList.ascx..

7. Find the section, beginning with <telerik:ClientTemplatesHolder ID="GridTemplates"


runat="server">, and between the elements named with “View” and “Source”, insert the
following snippet:

<telerik:ClientTemplate Name="Category" runat="server">


{#MetaFields.Category#}
</telerik:ClientTemplate>

8. This will add the category for each news item.


a. In the <Columns> section of the tag beginning with <telerik:RadGrid ID="ItemsGrid", right
after the element with UniqueName=”View”, insert the following snippet:

<telerik:GridTemplateColumn
UniqueName="Category"
SortExpression="Category"
HeaderText="Category">
</telerik:GridTemplateColumn>

This will add the column header.

b. Find the function called DataBindGrid, and change the requiredMetaFields variable to
include ‘Category’. It should look something like this:

var requiredMetaFields = ['Title', 'Author', 'Source',


'Publication_Date', 'Expiration_Date', 'Category'];

The order of the fields is unimportant, since this method requests information for all the news items
from a web service.

NOTE: when you make such changes (e.g. to templates), they might not take effect immediately. A
change in the web.config, or a server restart, or application pool restart, will force the new changes to be
taken into account.

Using RadEditor as a Custom Field


Sitefinity has a procedure how to automatically save and set meta fields. Sitefinity looks for all controls
that have id of a meta key, such as the News module’s summary field, and that can be cast to
ITextControl interface. The importance of the ITextControl interface is that it mandates the control to
have a Text property, so Sitefinity always knows that the value of meta field will be stored in control’s
Text property, without actually worrying what kind of a control it is.

219
USER MANUAL

If you’d like to bind another property to the Text attribute, you’d need to make a user control with that
UI component, implement the ITextControl interface and assign its text property accordingly.

In this example, the News module’s summary textbox, in edit mode, will be replaced with a RadEditor:

To be better acquainted with the field adding process, please refer to the Control Templates section. To
use the RadEditor as opposed to a regular textbox as a meta field, follow these steps:

1. To that XML file, add this code:

<?xml version="1.0" encoding="utf-8"?>


<controlsConfig>
<viewMap>
<!--Provides user interface for editing a
news item in the News module.-->
<viewSettings
hostType="Telerik.News.WebControls.Admin.NewsItemEdit"
layoutTemplatePath="~/Sitefinity/Admin/ControlTemplates/News/NewsIte
mEdit.ascx" />
<!--Provides user interface for creating
new blog post in the blogs module.-->
</viewMap>
</controlsConfig>

2. Comment out these lines:

<%--<li>
<asp:Label ID="Label4"
AssociatedControlID="Summary" Text="<%$Resources:Summary %>"
runat="server">
<asp:Literal ID="Literal19"
runat="server" Text="<%$Resources:Summary %>"></asp:Literal>
<em id="SummaryLabel"
runat="server"></em></asp:Label>
<asp:TextBox ID="Summary"
TextMode="MultiLine" Text="" runat="server"></asp:TextBox>
<p class="example">

220
USER MANUAL

<asp:Literal ID="Literal20"
runat="server" Text="<%$Resources:SummaryNote %>"></asp:Literal></p>
</li>--%>

3. Create a new user control called RadEditorNewsSummary.ascx and place it in the


~/Sitefinity/Admin/ControlTemplates/News directory
4. To that control, add this code:

ASPX:

<telerik:RadEditor ID="RadEditor1"
runat="server"></telerik:RadEditor>

C#:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class Sitefinity_ControlTemplates_News_RadEditorNewsSummary :


System.Web.UI.UserControl, ITextControl
{
protected void Page_Load(object sender, EventArgs e)
{

#region ITextControl Members

public string Text


{
get
{
return RadEditor1.Content;
}
set
{
RadEditor1.Content = value;
}
}

#endregion
}

5. Above the commented summary code in the NewsItemEdit.ascx file, add this code:

<li>
<uc1:RadEditorNewsSummary ID="RadEditorNewsSummary1" Text="Summary"
runat="server" />

221
USER MANUAL

</li>

6. Below the page directive, add this code:

<%@ Register src="RadEditorNewsSummary.ascx"


tagname="RadEditorNewsSummary" tagprefix="uc1" %>

You’ll notice that the text property is the same name as the field. This will ensure that data will be
read, inserted and updated.

7. Build the project and resolve any errors

Using a Drop Down List or a Checkbox as a Custom Field

Although the DropDownList and the Checkbox each have a text property, you might want to bind the
selected value property to the text property, so that value goes into the database. In this example, we
shall replace the News module’s summary textbox with a RadComboBox. This process is almost identical
to the steps for Using RadEditor as a Custom Field.

1. Follow steps 1 -2 of Using RadEditor as a Custom Field


2. For step 3, create a user control called RadComboBoxSummary.ascx in the
~/Sitefinity/Admin/ControlTemplates/News folder
3. To that control, add this code:

ASPX:

<telerik:RadComboBox ID="SummaryDropDown" runat="server" Skin="Vista


">
<Items>
<telerik:RadComboBoxItem Text="This is a summary" Value=" This is a
summary" />
<telerik:RadComboBoxItem Text="This is another summary" Value=" This
is another summary " />
<telerik:RadComboBoxItem Text="This is a third summary" Value=" This
is a third summary " />
</Items>
</telerik:RadComboBox>

Note that the value and the text property the same. The user will see the text property, but the value
property, as highlighted above, is what goes into the database.

C# - Bind the Text property to the selected value property of the RadComboBox

public string Text


{
get
{

222
USER MANUAL

return SummaryDropDown.SelectedValue;
}
set
{
SummaryDropDown.SelectedValue = value;
}
}

4. Above the commented summary code in the NewsItemEdit.ascx file, add this code:

<li>
<uc1: RadComboBoxSummary ID="RadComboBoxSummary1 " Text="Summary"
runat="server" />
</li>

5. Below the page directive, add this code:

<%@ Register src=" RadComboBoxSummary.ascx " tagname="


RadComboBoxSummary" tagprefix="uc1" %>

You’ll notice that the text property is the same name as the field. This will ensure that data will be
read, inserted and updated.

6. Build the project and resolve any errors

Keep in mind that if you have another user control on the page with a tag prefix of uc1, you will need to
change its tag prefix. If you wanted to use a checkbox, as opposed to the RadComboBox, you’d just
replace the code in the .ascx file with a checkbox, since both controls have a selected value property.

Adding Thumbnails from Image and Documents Module to the News Module

These instructions will show you how to add a thumbnail selector, from the Images and Documents
module, when you’re editing the News module in the admin. Here is the end result:

To be better acquainted with the field adding process, please refer to the Control Templates section.
Here are the steps to add the field:

1. Between the <metaFields> tags of your Web.config, ensure that this code has been added:

223
USER MANUAL

<add key="News.Thumbnail" valueType="ShortText" visible="True"


searchable="True" sortable="True" defaultValue="" />

2. To your XML File, add this code in between the <viewMode> tags:

<viewSettings hostType="Telerik.News.WebControls.Admin.NewsItemEdit"
layoutTemplatePath="~/Sitefinity/Admin/ControlTemplates/News/NewsItemEdit.a
scx" />

3. Copy these files from the templates download

~/Sitefinity/Admin/ControlTemplates/Generic_Content/NewsItemEdit.ascx

~/Sitefinity/Admin/ControlTemplates/Generic_Content/App_LocalResources/NewsItemEdit.ascx.resx

Into your corresponding Sitefinity project directories

4. Open this file:


~/Sitefinity/Admin/ControlTemplates/Generic_Content/NewsItemEdit.ascx

5. Add this code:

<li class="selector">
<asp:Label ID="Label5" AssociatedControlID="Thumbnail" runat="server">
<asp:Literal ID="Literal18" runat="server" Text="Thumbnail"></asp:Literal>
<em id="ThumbnailLabel" runat="server"></em></asp:Label>
<asp:TextBox ID="Thumbnail" Text="" runat="server"
MaxLength="250"></asp:TextBox>
<sfLib:ButtonSelector runat="server" AssociatedControls="Thumbnail" />
<p class="example">
<asp:Literal ID="Literal21" runat="server" Text="Thumbnail
Note"></asp:Literal></p></li>

6. Add this code below the page directive:

<%@ Register TagPrefix="sfLib" Namespace="Telerik.Libraries.WebControls"


Assembly="Telerik.Libraries" %>

7. Open the ~/Sitefinity/Admin/ControlTemplates/Libraries/Dialogs/ButtonSelector.ascx.


8. In the SelectedItem JS function, add the following check:

function SelectedItem(src, altText, title, width, height)


{
this.src = src;
this.altText = altText;
this.title = title;
this.width = width;
this.height = height;
if (typeof(beforeInsertLink) != 'undefined')

224
USER MANUAL

beforeInsertLink(src, altText, title, width, height);

Here is the end result:

Adding Providers

Adding a provider can come in very handy if you want your Sitefinity modules to display items from
some other data source, or if you want to implement some functionality that is different from the default.

For instance, if you have several sites and need to display the same news articles across those sites, you
need to store these items in a common database. To achieve this, you need to:

 set the connectionStringName attribute for each news provider to point to a connection string
to the same database;
 set the applicationName attribute for each news provider to the same value.

Follow the steps below to add your own news provider, for example “Breaking News” provider.

225
USER MANUAL

1. Open the application web.config file and find the <cmsEngine


defaultProvider="Generic_Content"> section. From the providers’ collection, copy
the provider element named News.

2. Paste below it and rename it to Breaking_News for example.

3. Set the applicationName attribute to /BreakingNews. The new provider should look like this:

<add name="Breaking_News"
defaultMetaField="Title"
visible="False"
securityProviderName=""
allowVersioning="True"
applicationName="/BreakingNews"
versioningProviderName=""
connectionStringName="GenericContentConnection"
type="Telerik.Cms.Engine.Data.Providers.DefaultProvider,
Telerik.Cms.Engine.Data"
......
/>

4. From the <metaFields> collection in the <cmsEngine> section, copy all elements whose
keys start with “News”.

5. Paste the elements below the last element so the new ones are added to the collection.

6. Change the key of each new element from News.[FieldName] to Breaking_News.[FieldName].

<add key="Breaking_News.Title" valueType="ShortText" visible="True"


searchable="True" sortable="True" defaultValue=""/>
<add key="Breaking_News.Summary" valueType="LongText" visible="True"
searchable="True" sortable="True" defaultValue=""/>
<add key="Breaking_News.Author" valueType="ShortText" visible="True"
searchable="True" sortable="True" defaultValue=""/>
<add key="Breaking_News.Source" valueType="ShortText" visible="True"
searchable="True" sortable="True" defaultValue=""/>
<add key="Breaking_News.Publication_Date" valueType="DateTime"
visible="True" searchable="True" sortable="True"
defaultValue="#Now"/>
<add key="Breaking_News.Expiration_Date" valueType="DateTime"
visible="True" searchable="True" sortable="True"
defaultValue="#Max"/>
<add key="Breaking_News.Thumbnail" valueType="ShortText"
visible="True" searchable="False" sortable="False" defaultValue=""/>
<add key="Breaking_News.Category" valueType="ShortText"
visible="True" searchable="True" sortable="True" defaultValue="" />

7. Find the <news> section and from the <genericContentProviders> collection, copy the
first element and paste below it.

226
USER MANUAL

8. Rename the provider to Breaking_News:

<add providerName="Breaking_News"
publicationDateField="Publication_Date"
expirationDateField="Expiration_Date"
thumbnailUrlField="Thumbnail"
urlRewriteFormat="[Publication_Date]/[Title].aspx"
urlDateTimeFormat="yy-MM-dd"
urlWhitespaceChar="_" />

9. In ~/Sitefinity/ControlTemplates directory, copy the News folder and rename it to


Breaking_News.

10. In ~/Sitefinity/Admin/ControlTemplates, copy the News folder and rename it to


Breaking_News.

Although steps 9 and 10 are optional, since templates are now embedded in Sitefinity 3.6, we
recommend copying the folders in case you need to adjust templates.

11. Run the application.

You will see a drop down list in the upper left corner when you go to Modules > News

12. Select the provider you want to manage news for:

227
USER MANUAL

You can also set different user permissions for the new provider, since you have a duplicate of the news
module in this example. When you put a NewsView control on a page, you need to specify the provider
name for the control. If no provider is specified, the default one is used. The ProviderName attribute is
located in the Advanced > Data section of the NewsView.

Please note that the connection string name is coming from the data access section of the Web.config:

<dataAccess defaultConnection="DefaultConnection">
<connections>
<add name="DefaultConnection"
driver="Nolics.ORMapper.DataProviders.SqlServer2005Provider"
connectionStringName="Sitefinity"/>
<add name="GenericContentConnection"
driver="Telerik.Cms.Engine.Data.Providers.GCSql2005Provider,
Telerik.Cms.Engine.Data" connectionStringName="Sitefinity"/>
</connections>
</dataAccess>

Here, the connection string name is coming from the connection string section:

<add name="Sitefinity" connectionString="data source=.;Integrated


Security=SSPI;initial catalog=36Demo"
providerName="System.Data.SqlClient"/>

228
USER MANUAL

Since the News, Blogs, Images and Documents and Events Module inherit features from the Generic
Content module, you must use the highlighted Generic Content Connection’s driver. So, if you’d like to
share content from two sites using two separate databases, follow these steps:

1. Add a second connection string:

<add name="Sitefinity2" connectionString="data source=.;Integrated


Security=SSPI;initial catalog=36Test"
providerName="System.Data.SqlClient"/>

2. Add a connection to the data acccess section

<add name="GenericContentConnection2"
driver="Telerik.Cms.Engine.Data.Providers.GCSql2005Provider,
Telerik.Cms.Engine.Data" connectionStringName="Sitefinity2"/>

3. Set the connectionStringName attribute in step 3 to GenericContentConnection2

If you do not want two web sites to share the same content, you need to change the applicationName
attribute for each provider. To do so, follow these steps:

1. Find the section <cmsEngine defaultProvider="Generic_Content">


2. Add the line in red:

<add name="Breaking_News"
defaultMetaField="Title"
visible="False"
securityProviderName=""
allowVersioning="True"
applicationName="Site1/BreakingNews"
...

229
USER MANUAL

Customizing the Generic Content Module


The Generic Content Module’s buttons can be added and removed plus the CSS Drop Down can be
populated.

Adding and Removing Buttons


Sitefinity’s Generic Content module is the RadEditor tool for a special wrapper, so all properties for that
tool apply for the Generic Content module. Although buttons can be added in many ways, one suggestion
is to use an XML file. The steps below will outline adding a button for inserting a horizontal rule button:

1. Open this file: ~/Sitefinity/Admin/EditorToolsFileAll.xml

This file contains all of the buttons available for the Generic Content module.

2. Copy the tag for the horizontal rule: <tool name="InsertHorizontalRule" />
3. Paste that line of code into this file: ~/Sitefinity/Admin/EditorToolsFile.xml

This file controls which buttons are visible in all instances of the RadEditor, which include the ones in
the News and Blogs modules. Any changes made here will affect the admin’s version Generic Content
module, such as when users edit news or create events, or when users are creating or editing pages.

After pasting that line, your code could look possibly like this:

<tools dockable="false">
<tool name="Bold" shortcut="CTRL+B"/>
<tool name="Italic" shortcut="CTRL+I"/>
<tool name="JustifyLeft" />
<tool name="JustifyCenter" />
<tool name="JustifyRight" />
<tool name="JustifyFull" />
<tool name="InsertOrderedList" />
<tool name="InsertUnorderedList" />
<tool name="InsertHorizontalRule" />

For more info on adding and removing buttons, please review this article.

Populating the CSS Dropdown

The Generic Content Module allows you to populate a drop down list with CSS options by editing its
corresponding template. To get more familiar with the process, please read the Control Templates
section of this guide. To populate the drop down, follow these steps:

1. Between the <viewMap> tags of your XML file, add this code:

<viewSettings
hostType="Telerik.Cms.Engine.WebControls.Design.GenericContentDesign
er"

230
USER MANUAL

layoutTemplatePath="~/Sitefinity/Admin/ControlTemplates/Generic_Cont
ent/GenericContentDesigner.ascx" />

2. In the templates download, copy the


~/Sitefinity/Admin/ControlTemplates/Generic_Content/GenericContentDesigner.ascx file
into the ~/Sitefinity/Admin/ControlTemplates/Generic_Content directory of your
application

3. Add a CSSClasses element and the location of your external CSS file:

<telerik:RadEditor
runat="server"
ID="textEditor"
ContentAreaCssFile="~/Sitefinity/Admin/Themes/Default/AjaxControlsSk
ins/Sitefinity/EditorContentArea.css"

ToolsFile="~/Sitefinity/Admin/ControlTemplates/EditorToolsFile.xml"
Skin="WebBlue"
NewLineBr="False"
Height="360px"
Width="98%">
<ImageManager ViewPaths="~/Images" UploadPaths="~/Images"
DeletePaths="~/Images" />
<MediaManager ViewPaths="~/Files" UploadPaths="~/Files"
DeletePaths="~/Files" />
<FlashManager ViewPaths="~/Files" UploadPaths="~/Files"
DeletePaths="~/Files" />
<DocumentManager ViewPaths="~/Files" UploadPaths="~/Files"
DeletePaths="~/Files" />
<CssFiles>
<telerik:EditorCssFile
Value="~/Sitefinity/Admin/Themes/Default/AjaxControlsSkins/Sitefinit
y/EditorCssFile.css"/>
<telerik:EditorCssFile Value="~/Sitefinity/Admin/CSSFile1.Css" />
</CssFiles>
<CssClasses>
<telerik:EditorCssClass Name="Clear Class" Value="" />
<telerik:EditorCssClass Name="link" Value="a.link" />
<telerik:EditorCssClass Name="img" Value=".img" />
<telerik:EditorCssClass Name="redtext" Value=".redtext" />
</CssClasses>
</telerik:RadEditor>

4. In the ~/Sitefinity/Admin folder, create a file called CSSFile1.css


5. Inside that file, add this code:

a.link
{
color: #0000ff;

231
USER MANUAL

font-weight: normal;
font-style: italic;
}
.img
{
border: none;
}
.redtext
{
color: red;
}

Notice how the class class a.link is the value of <telerik:EditorCssClass above.

6. Restart the application

This dropdown can also be populated using inline styles. For more information, please read this article.

232
USER MANUAL

Disabling the Sitefinity Link Manager and Using the RadEditor Link Manager
Sitefinity uses a custom link manager:

Instead of the default one from the RadEditor as shown below:

To use this link manager directly above, follow these steps:

1. Follow steps 1 and 2 of Populating the CSS Dropdown


2. For step 3, open this file:
~\Sitefinity\Admin\ControlTemplates\Generic_Content\GenericContentDesigner.ascx
3. Comment this code:

//Telerik.Web.UI.Editor.CommandList["LinkManager"] =
function(commandName, editor, args) {

233
USER MANUAL

// var editorArgs =
editor.getSelectedElement();
// if (!editorArgs.nodeName || typeof
(editorArgs.nodeName) == "undefined" || editorArgs.nodeName != "A")
{
// var sel =
editor.getSelection();
// editorArgs = sel;
// editorArgs.Html =
sel.getHtml();
// editorArgs.Text =
sel.getText();
// }

// var myCallbackFunction = function(sender,


args) {
// if (typeof
(editorArgs.nodeName) != "undefined" && editorArgs.nodeName == "A")
//
args.parentNode.replaceChild(editorArgs, args);
// else {
// var cloned =
args.cloneNode(true);
// var div =
args.ownerDocument.createElement("DIV");
//
div.appendChild(cloned);
//
editorArgs.pasteHtml(div.innerHTML);
// }
// }
// var path = sf_AppRoot +
'Sitefinity/UserControls/Dialogs/LinksDialog.aspx';
// editor.showExternalDialog(
// path,
// editorArgs,
// 750,
// 515,
// myCallbackFunction,
// null,
// 'ImageLibraryDialog',
// false,
// Telerik.Web.UI.WindowBehaviors.Close +
Telerik.Web.UI.WindowBehaviors.Move,
// false,
// true)
// };

4. Save your changes

234
USER MANUAL

5. Use the Link Manager of any RadEditor instance, for the exception of your own custom modules,
to see the Link Manager change

Customizing the Images and Documents Module


The Images and Documents module allows custom meta fields, Amazon S3 support and Viddler support.

Amazon S3 Support

The Images and Documents module allows you store media on the Amazon S3. The instructions below
will show you how to add media to the Amazon S3 cloud using Sitefinity.

1. Sign up for the Amazon S3 Service


2. Obtain your access key and secret access key by going to Your Account > Access Identifiers:

3. Uncomment the highlighted S3 data provider in your web.config as shown below:

<!--Amazon Data Provider [First turn off the default one]


url format can be
urlRewriteFormat="~/{Provider}/{LibraryName}/[Name].s3lb" as well in
that cae there will extra libraries in the url-->
<add name="Libraries"
urlRewriteFormat="~/{LibraryName}/[Name].s3lb"
thumbnailExtension=".tmb" urlDateTimeFormat="yy-MM-dd"
urlWhitespaceChar="_" visible="False" defaultMetaField="Name"
applicationName="/Libraries" allowVersioning="True"
allowLocalization="False" localizationProviderName=""
allowWorkflow="False" securityProviderName=""
versioningProviderName=""
connectionStringName="GenericContentConnection"
type="Telerik.Libraries.Data.AmazonProvider, Telerik.Libraries.Data"
tagEditorTemplate="~/Sitefinity/Admin/ControlTemplates/Libraries/Bat
chTagsEditor.ascx" />

4. Navigate to the cmsEngine node.


5. Comment default "Libraries" data provider:

235
USER MANUAL

<!--<add name="Libraries"
urlRewriteFormat="~/{Provider}/{LibraryName}/[Name].sflb.ashx"
urlDateTimeFormat="yy-MM-dd" urlWhitespaceChar="_" visible="False"
defaultMetaField="Name" applicationName="/Libraries"
allowVersioning="False" allowLocalization="False"
localizationProviderName="" allowWorkflow="False"
securityProviderName="" versioningProviderName=""
connectionStringName="GenericContentConnection"
type="Telerik.Libraries.Data.DefaultProvider,
Telerik.Libraries.Data"
tagEditorTemplate="~/Sitefinity/Admin/ControlTemplates/Libraries/Bat
chTagsEditor.ascx" />-->

6. In the Web.config, find this code:

<storageSetting defaultProvider="Amazon">
<providers>
<add name="Amazon"

type="Telerik.Libraries.AmazonStorage.AmazonStorageProvider,
Telerik.Libraries"
downloadUrlPrefix="http://s3.amazonaws.com"
accessKey="YOUR ACCESS KEY"
secretAccessKey="YOUR SECRECT KEY"
bucketName="Sitefinity" />
</providers>
</storageSetting>

7. Add your Secret API key from Amazon to the secretAccessKey property:

secretAccessKey="YOUR SECRECT KEY"

8. Add your Access Key from Amazon to the accessKey property:

accessKey="YOUR ACCESS KEY"

9. Create your blog with images


10. Publish it

236
USER MANUAL

The above picture is a blog post using Live Writer, though using the admin will also work appropriately.
To test this feature, you can monitor your site using Firebug and your list will look like this:

Down in the bottom there are two requests for images posted by Live Writer which are directly
forwarded to S3 server.

Viddler Support
Viddler allows users to share videos with other users. To enable Viddler support in Sitefinity, follow
these steps:

1. Create a Viddler account and obtain an API KEY.


2. Upload some videos to your account
3. Open Sitefintiy’s web.config file
4. Find this section:

<sectionGroup name="telerik">

237
USER MANUAL

5. Add new section for our media provider, if it does not exist

<section name="mediaProvider"
type="Telerik.Libraries.MediaProvider.Configuration.MediaProviderSec
tion, Telerik.Libraries" requirePermission="false"/>

6. Under toolboxControls section register a new control that will display our videos.

<toolboxControls>
<!-- Viddler-->
<add name="Viddler Videos" section="VIDDLER"
type="Telerik.Libraries.WebControls.ViddlerVideo, Telerik.Libraries"
description="Viddler video content control" />

7. Under the <cmsEngine defaultProvider="Generic_Content"><providers>


section, add the Viddler provider

<add name="Viddler"
urlRewriteFormat="~/{LibraryName}/[Name].sflb.ashx"
thumbnailExtension=".tmb" urlDateTimeFormat="yy-MM-dd"
urlWhitespaceChar="_" visible="False" defaultMetaField="Name"
applicationName="/Libraries" allowVersioning="True"
allowLocalization="False" localizationProviderName=""
allowWorkflow="False" securityProviderName=""
versioningProviderName=""
connectionStringName="GenericContentConnection"
type="Telerik.Libraries.Data.ViddlerProvider,
Telerik.Libraries.Data"
tagEditorTemplate="~/Sitefinity/Admin/ControlTemplates/Libraries/Bat
chTagsEditor.ascx"/>

8. Find <libraryInfo> node and add the Viddler extensions and metaKeys

<add name="Viddler" title="Viddler Library"


defaultExtenstions=".avi, .mpg, .mov, .wmv, .wma, .3gp"
metaKeys="Author, Description, Extension, Name, Size,
Category"></add>

9. Find this section:

<mediaProvider defaultProvider="viddler">
<providers>
<add name="viddler"
type="Telerik.Libraries.MediaProvider.ViddlerProvider" apiKey="YOUR
KEY HERE" baseUrl="http://api.viddler.com/rest/v1/" />
</providers>
</mediaProvider>
</telerik>

238
USER MANUAL

10. Insert your API Key from Viddler into the apiKey property of the provider
11. Login in to your Sitefinity project and go to Modules > Images and Documents
12. Create a new library of type Viddler:

13. Under Viddler Credentials, enter your username and password for Viddler
14. Go to Synchronizer and choose which videos you want to synchronize with your library.
15. Go to the pages tab, click edit on a page, then drag and drop the Viddler control:

239
USER MANUAL

Note that VdrNetCred library will be automatically created. It collects date for your account and you
should not delete this library until you decide to change your credentials or remove Viddler provider.

Adding Custom Fields to the Images & Documents Module


Change the allowed file extensions

To change the allowed file extensions for document libraries:

1. Open the application web.config file and in the <libraryInfo> section, modify the value of the
defaultExtension attribute. In this case, we’re allowing files with the .xml extension to be uploaded
in the document library

<libraryInfo>
<add name=" Document "
title=" Document Library "
defaultExtensions=".doc, .docx, .rtf, .txt, .pdf, .ppt, .pptx,
.html, .xls, .xlsx, .xml"
metaKeys=" Author, Description, Extension, Name, Size,
Category">
</add>

</libraryInfo>

2. Save the file.

Note that you cannot add to the default extensions of image and video libraries.

The image libraries can only include the default ones: .png, .jpg, .jpeg and .gif.

The video library can only include the default one: .wmv

240
USER MANUAL

Create custom library types

To create your own custom type of library, follow these steps:

1. Open the application web.config file


2. In the section called <libraryInfo>, add your library, called MyLibrary, as shown below:

<libraryInfo>

<add name="Document"
title="Document Library"
defaultExtenstions=".doc, .docx, .rtf, .txt, .pdf, .ppt, .pptx,
.html, .xls, .xlsx"
metaKeys="Author, Description, Extension, Name, Size,
Category"></add>
<add name="MyLibrary"
title="MyLibrary"
defaultExtenstions=".*"
metaKeys="Author, Description, Extension, Name, Size,
Category"></add>
</libraryInfo>

Note that if you set the value of defaultExtensions to ".*", you will allow all file extensions.

My Library is displayed at the create library screen like this:

241
USER MANUAL

Adding custom Meta fields

This topic describes what you should do if you want to add a field called Caption to an image library and
display it at the edit image screen like this:

To better acquaint yourself with adding custom fields, please read the Overview of Adding Custom
Fields section of this guide. To add the field, follow these steps:

1. Open the project web.config file and in the <metaFields> collection, add this code:

<add key="Libraries.Caption"
valueType="ShortText"
visible="True"
searchable="True"
sortable="True"
defaultValue="" />

2. In the <libraryInfo> section, add Caption to metaKeys:

<libraryInfo>

<add name="Image" title="Image Library" defaultExtenstions=".png,
.jpg, .jpeg, .gif" metaKeys="Author, Caption, AlternateText,
Extension, Name, Height, Width, Size, Category" />
</libraryInfo>

242
USER MANUAL

3. Add this code to the XML file:

<?xml version="1.0" encoding="utf-8"?>


<controlsConfig>
<viewMap>
<!--Edit library item properties - Images & Documents.-->
<viewSettings
hostType="Telerik.Libraries.WebControls.Admin.LibraryItemEdit"
layoutTemplatePath="~/Sitefinity/Admin/ControlTemplates/Libraries/Libra
ryItemEdit.ascx" />
</viewMap>
</controlsConfig>

4. Unzip that download and copy these files

\Sitefinity\Admin\ControlTemplates\Libraries\LibraryItemEdit.ascx
\Sitefinity\Admin\ControlTemplates\Libraries\App_LocalResources\LibraryItemEdit.ascx.resx

Into this directory in your Sitefinity project:

LibraryItemEdit.ascx - \Sitefinity\Admin\ControlTemplates\Libraries
LibraryItemEdit.ascx.resx -
\Sitefinity\Admin\ControlTemplates\Libraries\App_LocalResources

5. Open the ~/Sitefinity/Admin/ControlTemplates/Libraries/LibraryItemEdit.ascx file and


find section:

<sfGCn:ContentMetaFields ID="itemMetaFields" runat="server">

6. Add this code:

<li>
<asp:Label ID="Label8" runat="server"
AssociatedControlID="Caption" Text="Caption"></asp:Label>
<asp:TextBox runat="server" ID="Caption" MaxLength="255"
TextMode=MultiLine></asp:TextBox>
<p class="example"><asp:Literal ID="Literal10" runat="server"
Text="Descriptive text that goes beneath the image" /></p>
</li>

7. Press Ctrl + F5 to build your project and resolve any errors

243
USER MANUAL

Customizing the Polls Module

Overview

To customize the appearance of the poll results, you need to edit the templates located in the
~/Sitefinity/ControlTemplates/Polls folder and then in edit page mode, then set the Poll Box control
properties as described below.

 Change the height of the bars like this:

- if using the ~/Sitefinity/ControlTemplates/Polls/ResultsBoxLegend.ascx, set the


BarWidthPercent attribute.

- if using the ~/Sitefinity/ControlTemplates/Polls/ResultsTemplateNoLegend.ascx, set the


Height attribute.

 Set the background color for the chart in the corresponding template by adding this Attribute to
the chart tag: Background-MainColor="SomeColor".

Customizing the Response Chart

To make the answers for each question in a single chart look like below, follow these steps:

1. Add this code to the XML file:


<?xml version="1.0" encoding="utf-8"?>
<controlsConfig>
<viewMap>
<viewSettings hostType="Telerik.Polls.WebControls.PollBox"
layoutTemplatePath="~/Sitefinity/ControlTemplates/Polls/PollBox.ascx
" />
<!--Gets or sets the path to a custom layout template for the
ResultsBox control.-->
<viewSettings hostType="Telerik.Polls.WebControls.ResultsBox"
layoutTemplatePath="~/Sitefinity/ControlTemplates/Polls/ResultsBoxNo
Legend.ascx" />
</viewMap>
</controlsConfig>

2. Unzip that download and copy these files

\Sitefinity\Admin\ControlTemplates\Polls\PollBox.ascx
\Sitefinity\Admin\ControlTemplates\Polls\ResultsBoxLegend.ascx
\Sitefinity\Admin\ControlTemplates\Polls\App_LocalResources\PollBox.ascx.resx

Into this directory in your Sitefinity project:

PollBox.ascx - \Sitefinity\ControlTemplates\Polls

244
USER MANUAL

ResultsBoxLegend.ascx - \Sitefinity\ControlTemplates\Polls
PollBox.ascx.resx - \Sitefinity\ControlTemplates\Polls\App_LocalResources

3. Go to the page where you


have inserted the Poll Box
control and click Edit.

4. Find the Poll Box control and


click Edit to open the Control
Properties dialog.

5. Expand the General section.

6. Find the ResultsBox property


and click Edit.
7. Expand the Appearance
section.

245
USER MANUAL

8. Set the TemplatePath property to point to this template:


~/Sitefinity/ControlTemplates/Polls/ResultsBoxLegend.ascx.

9. Click I’m done.

10. Open the ~/Sitefinity/ControlTemplates/Polls/ResultsBoxLegend.ascx file and modify the chart


there.

246
USER MANUAL

 Display each answer in a separate chart like this:

1. Go to the page where you have


inserted the Poll Box control and
click Edit.

2. Find the Poll Box control and


click Edit to open the Control
Properties dialog.

3. Expand the General section.

4. Find the ResultsBox property


and click Edit.

5. Expand the Appearance section.

6. Set the TemplateURL property to


point to this template:
~/Sitefinity/ControlTemplates
/Polls/ResultsTemplateNoLeg
end.ascx.

7. Click I’m done.

8. Open the
~/Sitefinity/ControlTemplates
/Polls/ResultsTemplateNoLeg
end.ascx file and modify the
chart.

247

Das könnte Ihnen auch gefallen