Cuyahoga .Net CMS Modules: MetaData and Meta Tags Management
As we wanted to have a rich-set of Meta tags for Search engine optimization (SEO), we have developed a complementary module “Meta Data Management” which enables the administrator or a user with enough right to control the set of Meta tags for each node of the site.
The Metadata Data Management module includes
- A complete list of both META http-equiv and META name with their definition and syntax. This list is maintained inside a separate XML configurations file and is easily customizable by the administrator
- A separated “defaults” Meta Tags files containing the default name and content for a web site
- The possibility for an external module to register dynamically new Meta tags during page generation
- The possibility to manage common metadata when the module is attached to a template section and, when needed, merge with node level specific metadata
Module Overview
The following schema illustrates the overall architecture of the module.

The architecture follows the guidelines of the Cuyahoga framework.
The module is composed of four main components and classes.
The xpMetaDataHandler.ascx component is responsible to feed thru the PageEngine the MetaTags defined in the template file:
<asp:literal id="MetaTags" runat="server" />
This component gets stored metadata for the current node from the database or dynamically passed by external modules thru the xpMetaDataManager object. The feeding is done at the pre-render stage of the asp.net events chain.
The xpMetaDataModule object is responsible to manage data persistency thru NHibernate and, when applicable, get the specific settings of the module for the current section/node.
The xpMetaDataManager object serves external module to provide an access to the handler enabling dynamic passing of metadata to the handler before rendering
The AdminMetaData.aspx page is used by the administrator to associate specific metadata for each node of the site.
For more information you can download the user guid in the download section or by following this path
Feel free to submit your comments
Back