All of the skins that ship with mojoPortal content management system use h1 for the site name and h2 for headings of feature instances. Some designers prefer for SEO (Search Engine Optimization) reasons to not use a heading at all for the site title and use h1 for the feature instance headings. In the past we had a global config setting that could be used to override the heading:

<add key="ModuleTitleTag" value="h2" />

As of mojoPortal CMS version 2.3.6.4, it is possible to edit the setting used for feature instances right from the Feature Instance Settings page (ModuleSettings.aspx). The heading is now stored in the database so it is possible to use different headings on different instances. When new instances are created it defaults to whatever you have for this setting: <add key="ModuleTitleTag" value="h2" />

This is an advanced feature and it is possible to put something incorrect for the heading element, so it is disabled completely by default and even when it is enabled it is limited to users in "Roles That Can Manage Skins". You can enable it by adding this to your user.config:

<add key="EnableEditingModuleTitleElement" value="true" />

Since this is a new data field used for the heading element, existing data will be updated to have h2 which is the default. However if you were previously using the config setting to force a different heading, for example if you were forcing it to use h1 by using this setting:

<add key="ModuleTitleTag" value="h1" />

then you will need to manually update the existing data by running a sql query like this:

UPDATE mp_Modules
SET HeadElement = 'h1'

Then going forward it will use the config setting for the default on new instances.

Controlling Module Title from theme.skin

You can also control the headings from the theme.skin file as shown in this example:

<portal:ModuleTitleControl runat="server"
    UseModuleHeading="false"
    UseModuleHeadingOnSideColumns="false"
    DetectSideColumn="true"
    Element="h1"
    SideColumnElement="h2"
    LiteralExtraTopContent=""
    LiteralExtraBottomContent=""
    ExtraCssClasses=""
    SideColumnExtraCssClasses=""
    />

The key here is to set UseModuleHeading to false which means don't use the module settings or the config setting but use the setting from theme.skin, ie Element and SideColumnElement. With those 2 settings you can make content in the side panes have a different heading than content instances in the center pane.

Created by Joe Audette on Apr 22, 2011
Last Modified by Joe Audette on Jun 02, 2014