css

Floating menu in Mediawiki 1.7

Submitted by Frederic Marand on
Just a quick note about Mediawiki today, because I noticed I hadn't been writing about software for quite some time. I just installed Mediawiki 1.7 on a server, and was annoyed by its table of contents (TOC) being in the normal HTML flow under the default "Monobook" skin, unlike Dokuwiki, for which the default skin neatly places the TOC on the top right of the main area. Of course, you can always use per-page directives to define this, like {{TOCright}}, but this is tedious to do on every page. After considering alternative skins, I figured it might not be that much to tweak, and indeed it is quite simple once you know where rules are located. so here we go:

"nested" : a drupal theme without columns

Submitted by Frederic Marand on

For quite a long time I'd been wishing this blog had an original theme. Not that I dislike Marvin, but I felt it was time to create my own theme, especially after doing work on adding settings to drupal themes.

Since today was bank holiday for the Assumption day, I decided I'd use it to create a theme after one of my pet peeves: white space on web pages.

How to add settings to custom Drupal themes

Submitted by Frederic Marand on

One feature I used to find missing in Drupal was the builtin ability to have themes include their own settings, like modules do.

For instance, a theme might allow switching renderings on the fly, without needing activation of specific stylesheets, or CSS or code tweaking, just by choosing parameters in an administration UI. But it was impossible. That is, until tonight.

Since a direct implementation in core seemed unlikely to see the day before 4.8/5.0, I created a proof-of-concept module just for this, called "themesettings".

The details and full source are available as a small demo which adds a "background" setting to a variant of the box_grey PHP theme, to define the background color of all nodes on the fly, just by choosing it from admin/themes/settings2/<chosen theme>. To read and download the code involved... :