Managing Pages in the DotNetNuke Admin Menu

A question I get often is “How do I hide pages from users of a DotNetNuke portal that I setup for my users?”

From now on, I’ll point them here 🙂

First, it’s important to understand a little bit about how DotNetNuke actually manages pages. Since all pages and module content is rendered from the database you’ve got to go there if you want to manage content that isn’t made available through a management interface. That means that in order to edit or remove an item from the menu, we need to edit a record in the database. This is often where seasoned webmasters and HTML designers get hung up because there are no common include files that can be found to edit.

Solutions Admin Menu

Solutions Admin Menu

Let’s start with a very practical example. Most consulting clients of mine don’t want their clients going to the solutions explorer. With that, we’ll demonstrate in this post how to remove that menu item from the admin menu.


To start, we need to figure out the tabid for the “Solutions Explorer” menu. If you have access to the SQL Server where the database is stored, that’s easy. If you don’t, it will require us to run a little bit of SQL.

From SQL Enterprise Management Studio

Open your DotNetNuke Database, drill into tables and open the Tabs table.

Find the record with the TabName “Solutions” and update the IsVisible property to be “False” or 0, depending upon the version of SQL Manager you are using.
Go to the Host>Host Settings page and drill into Performance and click the link named “Clear Cache” to rebuild the Admin menu.
If You Do Not Have Access to the Database
*** Warning*** – if you do not understand SQL well enough to understand what these T-SQL scripts do, do not modify your database from the SQL page in DotNetNuke. As always, please back up your database before making changes to your database and seek the help of a professional to do this. These statements have not been evaluated by the FDA and should not be used to treat or diagnose any medical conditions.
After agreeing to the above statement, go to the Host>SQL menu.
Execute the following script:
    Select tabid from tabs where title = ‘Solutions Explorer’ and portalid = 0
    /* if you are using a portalid other than 0, you should update that in the script above */
Write down the number that it gives you for the next script – mine was 53.
Replace the query above with the following (replace your tabid with the tabid from the number you wrote down from the first one).
   update tabs
   set isvisible = 0
   where tabid = 53
In order to see your changes reflected, you’ll need to clear the cache with the same step listed above:
Go to the Host>Host Settings page and drill into Performance and click the link named “Clear Cache” to rebuild the Admin menu.
Happy Nuking,
Ryan Morgan

Arrow Consulting & Design is a consulting firm based in West Palm Beach, Florida specializing in DotNetNuke, ASP.NET, SQL and WPF Development with a portfolio filled with local, national, government and global enterprise clients.

Case Studies: Click Here
Main Corporate
DotNetNuke Community Site:  
Consulting Inquiries: Click Here
Skin Design/Conversion: Click Here
DotNetNuke Portfolio: Click Here


~ by dotnetnukeconsulting on August 23, 2008.

4 Responses to “Managing Pages in the DotNetNuke Admin Menu”

  1. […] Managing Pages in the DotNetNuke Admin Menu […]

  2. Now, how to remove the entry from the control panel?

  3. cmdSolutions.Visible = False
    cmdSolutionsIcon.Visible = False

    in admin/ControlPanel/IconBar.ascx.vb:Page_Load

  4. It worked out. Thanks for ur great post…..

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: