LandPage für Wordpress

Mittwoch, August 19th, 2009

LandPage ist ein simples Plugin um raus zu finden ob der User von einer Suchmaschine kommt. Es existier ein fertiges Wordpress Plugin “landingsites“, doch er ist etwas Komplex für mich und so entwickelte ich eine Lösung die mir nur das nötigste gibt. Was mir sehr Wichtig war, das der Plugin keine Ressourcen verschwendet und so kam ein kleiner PHP Script raus, welcher meine Erwartungen völlig erfühlt.

Das LandPage Plugin wird in den Wordpress Plugin Ordner rein geschmißen und in der Plugin Verwaltung aktiviert. Jetzt kann man überall im Code folgenden Schnipsel einbauen um den Usern die von einer Suchmaschine kommen, speziellen Content zu zeigen wie zum Beispiel Werbung.

if(class_exists('Xelaz_LandPage') && Xelaz_LandPage::isLanding())  {
  // Ich komme von einer Suchmaschine
}

Ich hab kurze Zeit meine Referer beobachtet und Suchmaschinen rausgesucht über die User auf meinen Seiten landeten. So kam eine kleine Liste raus mit Suchmaschinen jeglichen Ursprungs.
Die Überprüfung bezieht sich nur auf einen Schnipsel aus der Referer URL. Wenn der User von google.com, google.de oder images.google.de kommt suche ich nur nach dem Schnipsel “google.” und das reicht mir vollkommen.
Wer natürlich das nicht so sieht, kann nach seinen Wünschen die Suchmaschinen Liste im Quellcode bearbeiten.

Hier sind die Suchmaschinen Schnipsel:

$_searchMachine = array(
	'google.',
	'lycos.',
	'yahoo.',
	'msn.',
	'live.',
	'icq.',
	't-online.',
	'yandex.',
	'ixquick.',
	'freenet.',
	'abacho.',
	'altavista.',
	'metager',
	'gmx.',
	'web.de',
	'fireball.',
	'alltheweb.',
	'excite.',
	'lycos.',
	'allteweb.',
	'aol.',
	'aolsvc.de',
	'iwon.',
	'ask.',
	'cometsystems.',
	'hotbot.com',
	'overture.com',
	'metacrawler.',
	'netscape.',
	'looksmart.',
	'webcrawler.',
	'earthlink.',
	'viewpoint.',
	'gigablast.',
	'startpagina.',
	'mamma.',
	'seznam.',
	'scroogle.org',
	'conduit.',
	'babylon.',
	'searchand.'
);

Wenn ich was Vergessen hab, könnt ihr das in den Kommentaren hinterlegen.

Im Herzen des Plugins benutze ich die Funktion “str_replace” die ohne Reguläre Ausdrücke auskommt. Wie hier im Beispiel:

 
$list = array(
  'google',
  'yahoo'
);
 
$count = null;
 
$str = str_replace($list , '#', $_SERVER['HTTP_REFERER'], $count);
 
if($count>0)	
  'User kommt von einer Suchmaschine';

Download: LandPage.php



Page2Widget

Samstag, November 29th, 2008

Letzte zeit hab ich mit Wordpress ein paar Projekte realisiert, die ich an die Leute weiter gegeben habe. Leider haben die aber kein Plan von Homepages und das HTML noch nicht mal als Wort kennen.
Und so kam auch ein Problem auf. Um in den Widgets ein paar Bilder Links einzubauen muss man HTML können. Für einen Htmlcoder ist es sehr einfach so ein Widget zu erstellen und zu Pflegen. Man nimmt einen Text Widget und schreibt dort ganz normal HTML rein und es läuft. Diese Technik kann ich doch nicht den Leuten geben. Den die würden Ewigkeit brauchen um HTML zu lernen und dann müssen die jedes mal auf mich zu kommen um ihr einfaches Problem zu lösen. Da musste eine Lösung her die ich leider nicht fand im Netz, vielleicht hab ich auch falsch gesucht aber es war nichts was mir helfen könnte und da kam mir eine Idee die ich auch umgesetzt habe.
Ich hab ein Page2Widget entwickelt, welcher es erlaubt Pages (Seiten) in einem Widget zu zeigen. So kann man eine XY Seite anlegen, danach den Page2Widget in die Sidebar einfügen, die XY Seite auswählen und das ganze abspeichert. Und so kann man die Page im Widget sehen, was die Möglichkeit bietet den normalen Homepage Besitzer, die Widgets mit dem Editor zu erstellen, und dabei allen Features nutzen, wie Formatierung des Text oder einbettung der Medien (Bilder). Dabei muss man die Seite noch nicht mal Veröffentlichen um sie nirgends wo zu zeigen.

Widget Download:
page2widget

Benutzung:

  1. Man downloadet das Page2Widget Plugin.
  2. Legt ihn in den Plugin Ordner und aktiviert ihn in der Plugin Verwaltung.
  3. Danach wir eine XY Seite angelegt mit gewünschtem Inhalt (man muss sie nicht veröffentlichen)
  4. Nachdem geht man auf Darstellung -> Widgets und fügt das Page2Widget in die Sidebar ein.
    (Man kann 9 solcher Widgets anlegen, die unten im Menü angelegt werden können)
  5. Im Widget wird dann die XY Seite ausgewählt. Man kann auch Titel anlegen, welcher den Original Titel XY überschreibt.
  6. Jetzt wird die Sidebar gespeichert und schon kann man den Widget in der Sidebar betrachten.


Wordpress Widget Random Pages

Freitag, April 18th, 2008

Mich hat mal eine Frage interessiert, Wie schwer ist es ein Widget für Wordpress zu schreiben? Nach 2 Stunden hab ich meinen ersten Widget geschrieben.

Random Pages 1.0

Es generiert eine Liste in der Sidebar mit Zufälligen Einträgen. Dabei hab ich überlegt, was passiert mit den Einträgen die schon alt und auf der 1x Seite liegen. Und so hab ich eine Karussell von zufälligen Einträgen erschaffen.

Das Widget ist sehr einfach aufgebaut wie die API von Wordpress, um weitere Widgets zu erstellen wird dieses mir als guten Einstieg dienen.

Ich weis nicht sich das Widget bei Wordpress 2.3 verhält. Wenn es aber Fehler verursacht sagt mir bescheidt und versuche sie zu Fixen oder gebt es Feature Wünsche, dann einfach schreiben.