Major Theme Overhaul

Topics: Controls, Themes
Feb 18, 2009 at 8:57 PM
I am working on my first BlogEngine site (using it as a CMS admittedly). I am quite familiar with similar products for PHP like WordPress and Drupal, so I'm not a total n00b. That said, I do have some likely n00bish questions.

1) Can I edit the Search widget?
I am at a bit of a loss for manually customizing some of the widgets. I did a few keyword searches of the site and couldn't find the HTML that seems to be automagically creating the form on render.
I want to:
a) move the search into the header
b) change the size of the field
c) apply custom styles using niceform (

2) Can I change the posts page?
Seeing as this is a literal engine for blogs, this may not be possible. I was hoping to change the posts to another page and set a different page as the default. WordPress has a couple check-boxes to accomplish this in settings.
Failing this, I would like to have some content above the posts as like a Sticky masthead / main story.

I may have other questions (like spacing the comments form a little better), but I'd like to spend a few minutes making sure the problem isn't blindingly obvious. The ids / CSS are unfamiliar!

Feb 18, 2009 at 9:36 PM
The Search widget is actually just using the "SearchBox" control.  You can add the SearchBox control anywhere in your site.master file (e.g. the header) ...

<blog:SearchBox runat="Server" />

The markup for SearchBox (and all its code) comes from SearchBox.cs under App_Code controls.  You can edit this file if you want to customize it.

One option to create a new default page is to create a "Page" in the control panel.  When you're editing the Page, there's a "Is front page" checkbox you can check which will make the page the front/default page.
Feb 19, 2009 at 5:57 PM
Thanks Ben, you're the man.

In case anyone else decides to do this; you have to create a new form - moving the <form runat="Server"> into the header doesn't work with my web.config using <system.webServer>
Instead I had to use <form action="search.aspx"> and rename the field "q" in the SearchBox.cs