There is no need to buy a landingpage theme. You can easily build one for free with the new default WordPress theme 2012 (Twenty Twelve)!

First install WordPress

Of course first you need to install WP on your webserver or webspace. If you have a decent hoster this can easily be done by one click through your user-interface. If that is not the case you’ll find lots of howtos on the web how to install WordPress. Don’t be afraid it is really easy!

After you made sure that your WordPress is successfully installed log in to the backend. Switch to the menu point Appearance.

Second remove clutter

With the landing page you basically want a user to do a specific action. That could be anything from a newsletter sign-up, filling out a contact form, call a phone number, register for a service to to doing a sale. To get to that point there has to be only one (main) action the user can actually do on the website. You have to lead the user to the action and there should be no distractions that move your user away from fulfilling the actions. For building our landing page with the WordPress theme Twenty Twelve this means that you want to get rid of navigations (main, sidebar, footer), additional blocks (widgets) and misleading site elements.

Helpful page templates

Most of the stuff is actually removed with just one setting! The new theme brings by default two templates which are suitable for a landing page design. One is called Front Page Template and the other is called Full-Width Page Template, No sidebar. You can choose either one, they will both work.

Remove main menu

Ok, I have to admit on this part I do a trick. Instead of really removing the menu we use an empty custom menu. To do that you first have to create a custom menu. In Appearance you’ll find the menu entry “Menus” which gives you all the options you need! Just create a new menu with a random name. Do not add any menu points to that menu. Choose the menu in Theme Locations as Primary menu. That’s it! You just made the menu disappear.

Change footer link in Twenty Twelve theme

In my lovely country (I live in Germany) there are some legal obligations to show an imprint on every commercial website which has to be reachable from every page on the website. There already is a link which fits this description and is a bit annoying for our purpose anyway: the WordPress default footer link. Luckily WordPress is very customizable and we can take over this hyperlink. Here is how you change the footer link in the Twenty Twelve theme. Other themes are very similar. You just have to look for other strings.

In Appearance you will find the on-board Editor. If your webserver settings are correct you can easily edit some of the WordPress sourcecode directly online. Look for the following string:

<div class="site-info">
<?php do_action( 'twentytwelve_credits' ); ?>
<a href="<?php echo esc_url( __( '', 'twentytwelve' ) ); ?>" title="<?php esc_attr_e( 'Semantic Personal Publishing Platform', 'twentytwelve' ); ?>"><?php printf( __( 'Proudly powered by %s', 'twentytwelve' ), 'WordPress' ); ?></a>
</div><!-- .site-info -->

It is HTML markup and some PHP code. Strip it to:

<div class="site-info">
<a href="" title=""></a>
</div><!-- .site-info -->

And paste your link (URL) in between the apprentices after the href-tag and also set a title for the link by writing something in between <a href=...> and </a>.

Now you should have a result similar to the following picture.

Free landing page with Twenty Twelve WordPress Theme 300x115 Build a free landing page with the Twenty Twelve WordPress theme

A few more steps with Twenty Eleven and Twenty Ten

So start building your landingpage by removing everything. This is how you do it with WordPress:

  • In Appearance again switch to Widgets.
  • Check all widget areas for widgets and remove them

Now you can concentrate on building the content for the page!

I hope you liked my howto. If you have any questions or suggestions please leave a comment. Share this tutorial with people that might find it helpful as well and don’t forget to subscribe to our feed for future tips and tricks.

2 Kom.

Setting up your own website to display a collection of videos hosted on YouTube is as easy as following the six simple steps below.

  1. Download and install WordPress 3.0
  2. Download, install and activate the Videographer WordPress Theme
  3. Download, install and activate the WP YouTube plugin by Jens Törnell
  4. Download, install and activate the WP-PostRatings plugin by Lester ‘GaMerZ’ Chan
  5. Follow the rest of the instructions in paragraph Setting up Videographer on the Videographer site.
  6. You are ready to go to publish your first video!

Have a look what a site for viral videos will be like once filled with lots of content.


Auf dem Playground der ebiene ist ein lesenswerter Artikel zum Thema Google App Engine als CDN einsetzen erschienen.

Nach einer kurzen theoretischen Einführung, geht der Autor sofort ins praktische über und beschreibt den Einsatz der App Engine.


Heute ist WordPress in der Version 2.8 erschienen. Da ich momentan an einem WordPress-Plugin arbeite, interessant mich nicht nur, was sich an der Oberfläche oder am Funktionsumfang geändert hat, sondern auch was es für Neuerungen im Inneren gibt.

Ein diff zwischen WordPress 2.7.1 und WordPress 2.8 gibt mir 1194 Zeilen zurück. Ein Blick auf die Änderungen zeigt mir, dass der Code aufgeräumt. Es kommen jetzt z.B. die neuen Funktionen der esc_-Serie zum Einsatz.

Eine der spannendsten Neuerungen dürfte die neue Widgets API sein. Um ein mehrfach instanzierbares Widget zu erstellen, wird die Klasse WP_Widget erweitert. Die drei Methoden widget(), form() und update() müssen in der eigenen Klasse überschrieben werden.

Die Menüs lassen sich jetzt mittels Plugin aufbauen/umordnen. Einige Fantasie vorausgesetzt, öffnet das ungeahnte neue Möglichkeiten. Das Menü war bisher sehr starr und hat damit das Layout aller Themes stark bestimmt. Mit einem programmatisch änderbaren Menü werden wir interessante, neue Layouts sehen.


Running a successful website is a constant struggle for performance and speed improvements. Read how we have used the Seagull framework to build our portal upon it. As a start-up we provide a web based service to find, comment, play and recommend audio and video podcasts. At the moment the service is intended for a German speaking audience only but we are prepared for internationalisation thanks to Seagull.

In February of 2006 I published the first version of based on an early 0.4 release of Seagull. It took me over fourteen month to modify Seagull to fit my needs. I wrote several new modules and hacked lots of things like clean urls. Many of the things are now part of the core (and are not written by me). One thing did make it into the release. The export module which generates RSS feeds. RSS feeds are what our system is really about. Not knowing any better I built the portal based upon a MySQL database. An XML db might have been a better choice at least in some areas. The biggest table holds over 500.000 entries. These ar all the references to podcast episodes and its metadata. In the time being we upgraded from a MySQL db version 4.x to the latest, stable version of the 5th release. Database performance has been an issue since the start only at the beginning it was not noticeable enough. The layout of the database should have been designed less complex. With the amount of data and the overall usage growing we ran into hown-grown issues. With indexes, query optimisations, better hardware, newer MySQL releases, a migration to split sequence tables, db caching, MySQL tweaking and most importantly the replacement of most DataObjects code we got fairly good performance on the db side.

Caching is really the one life-saver every webmaster should look out for. Seagull has built-in template and nowadays library caching support which is nice. We used the SGL_Cache class for general purpose data caching as well. With a rising number of pages and a climbing user base the file-based cache turned into a bottleneck as the harddrive had to seek through several thousand files. A different file-system for smaller files might have helped for a while. We chose to replace the file-based with memory-based caching. It is just a five line hack in SGL_Cache and a little wrapper! In our case we decided to use memcache. Memcache(d) is commonly used. The PHP part is installable through PEAR and with PHP5.x which we switched to in our development cycle you have an OO interface. Shared memory would have been an alternative. At first memcache worked very well but having a few thousand objects stored it slowed down. For a while we had to flush the cache every now and then because we could not find anything related on the net which explained this behaviour. Migrating to a new server with a newer linux and a newer memcached installed solved the problem. We could not replace the memcached before because of dependency issues.

Another performance issue is rendering the navigation. This got a bit better over time. The solution again is to cache most parts of it. There are still some other minor issues with the DB-based navigation. I have not tried the file-based one, yet. With DB-based nav you are not able to add an alias with two slashes. That is the biggest drawback for us at the moment. I wrote my own alias strategy for this which works well. Proper I18N might be the next issue once we need it.

I am still not friends with emailing in Seagull. As default Seagull sends HTML mails. I am not a big fan of that. I want to send text and HTML mails combined. Ages ago I sent in a patch which did not get accepted. A couple month back an almost identical patch got sent in. Neither did that one get accepted. Anyhow we are using this modification successfully.

Now that I named all the issues with Seagull letÂŽs have a look at the good parts. The overall structure is complex but fairly clean and intuitive once you start working with it. The overall progress might be slow but the framework is steadily improving thanks to Demian, Lakiboy and all the other active developers. The framework is flexible and versatile. We are using it with several different interfaces (web, mobile, iptv, search). I hooked up Zend libs succesfully into the system without problems. We have several crawlers running using cron jobs and the CLI interface. Migrating from 0.4 to 0.6 was an effort but thanks to the loosely coupled core possible.

Since the last relaunch of at the end of September ÂŽ07 we are intensively using AJAX. We moved the database to its own server. We have the static properties on another separate server. We tried to use lighttpd as http server instead of ApacheÂŽs http-server to reduce the load. We failed. I could not get it stable on load.

These days we welcome over 10.000 unique visitors a day. Almost 25.000 people registered for our service. We serve over two million pages a month with one Seagull server. We have 18 custom Seagull modules, 6 different themes (not all in use, yet) and three years of development spent on the system. The database now has 112 tables with around 1 GB of data. The next step in performance upgrades will be a second database server for a read-only slave. Before that we have to modify SQL query executions to differ between read and write operations. At the moment there is room for more so pay us a visit at and let us know how you like it!


I was looking for art work for a presentation I am holding next week. I need some abstract figures. One of the sources I immediately thought of is the Open Clip Art Library. And yes, I found graphics the way I was looking for.