User:Malachi.b/N2 CMS
This is not a Wikipedia article: It is an individual user's work-in-progress page, and may be incomplete and/or unreliable. For guidance on developing this draft, see Wikipedia:So you made a userspace draft. Find sources: Google (books · news · scholar · free images · WP refs) · FENS · JSTOR · TWL |
Original author(s) | Cristian Libardo |
---|---|
Stable release | 2.2.1
/ March 2012 |
Operating system | ASP.NET / Microsoft Windows / SQL Server |
Type | Content management framework, Content Management system, Community |
License | ??? |
Website | n2cms |
N2 is an open source content management system (CMS) platform for publishing content on the World Wide Web and intranets.
Concept
[edit]N2 is a programmer-centric approach to CMS. That is to say, much of the site configuration occurs by creating C# classes which map to the various type of content to be shown. An equally important and related idea is that while plenty of CMS solutions exist, very few play integrate easily into an existing ASP.NET site. N2 hopes to solve that, as it "doesn't mess with your user interface" [1]
((Frankly, the vast majority of CMS systems take the approach that the CMS comes first, and all other potential site components (shopping carts, etc.) come second - plugins, if you will, to the core CMS. While not an unreasonable approach, many working with existing and/or highly dynamic websites simply do not have the option of yielding control this way. N2 shines in this area, tackling the issue head on - one may transparently install N2 right on top of one's existing web site with only minor configuration (namely configuring N2 to point to the start page) ))
Some fundamental concepts to understand with N2 are:
- ContentItem - a C# class which is picked up by N2 and used as backing data for web pages
- Template - an ASPX/ASCX which ContentItem(s) feed
There's a lot of bits and pieces to know, but these fundamental concepts are universally prevalent.
ContentItem
[edit]ContentItems come in many flavors, including:
- page oriented
- control oriented
- pure content oriented
To use OOP lingo, as far as N2 is concerned, whatever custom ContentItem classes you make is the 'class' and the administration interface creates instances of these class, which N2 refers to as 'nodes'. These nodes are persisted within the database, and indeed are a focal point as that's the 'C' in CMS.
As is customary within CMS systems, nodes can be edited, published, rolled back and deleted.
Page
[edit]Something that's easy to miss but important to know is that certain ContentItems associate with specific ASPX templates via its TemplateUrl property. In this way, one instructs N2 to use the specified ASPX file whenever this type of content is published.
Control
[edit]Pure Content
[edit]This is useful for content which doesn't need to have its own control or page per se, but would like to be referenced from an existing Page or Control node. One example might be on a Control node which represents an article, the Pure Content nodes would represent comments on the article - no comment needs its own page, but is rather referenced as a list of child items after the article.
Template
[edit]One does not navigate directly to a template. Instead, when page-oriented ContentItems are added into the system, each can be assigned a specific and unique URL. In this way, one ASPX Template can become multiple web pages.
Administration
[edit]Within the Administration console one will find a hierarchy of the ContentItem node tree. Be aware this frequently but not always maps to exact ASPX pages.
Configuration
[edit]How to change the start page
[edit]In the web.config file, find the host element:
<n2 xmlns="http://n2cms.com/schemas/configuration/v3"> <host rootID="1" startPageID="2" multipleSites="true"> </n2>
Once install completes, you should have a Root Node and a Start Node.
References
[edit]- ^ N2CMS. "Behaves on ASP.NET". N2CMS.
{{cite web}}
: CS1 maint: numeric names: authors list (link)
External links
[edit]