You want to be able to pick the order in which pages show up in the top menu with out hard coding it into the master page?
You can do this by changing the code in the /app_code/controls/PageList.cs
What I do is create my own control and then insert that control into the menu, this way you don't have to worry about issues when
updating/grading BE, all you do is just re insert your custom control.
Like this in the menu:
<blog:LinkMenu ID="LinkMenu1" runat="Server" Filter="Header" />
I have this function with a custom Build of BlogEngine.
You can see the admin part in action here:
Go to "add Page"
You will see different fields not included in normal BE.
Currently I had not set it up to work with the current site theme so it does not work correctly right now.
But, you can at least see the different options you have through.
Not only can you have it at your "main" menu you have option to assign a page to any menu you have on your website.
Or even assign it to the PageLinkMenu widget.
So you can have a "top main menu"
Have pages 1-5 show up there.
Then you can have a PageLinkMenu widget and in the "menu" field put "widget"
Then pages 6-10 will show up only in the PageLinkMenu widget and not any where else.
You can also place additional menu's just by placing additional control tags in the site.master page.
<blog:LinkMenu ID="LinkMenu2" runat="Server" Filter="SubMenu" />
You can see this in action live by going here:
Once you have your widget and site.master page set up the way you want it you will never have to add any "hard" links inside of your
For your menu in your site.master you only have the control tag and that is it inside of your menu code.
<li><blog:LinkMenu ID="LinkMenu1" runat="Server" Filter="Header" /> </li>
No need for any "hard" coded links in your site.master page :)
I also have it set-up to only show "page" widgets for pages and "post" widgets for posts.
This way when viewing a post you only see widgets related to posts, and the same for pages.
This reduces the amount of widgets on each "Webpage"
Hope this helps,