Mein erstes WordPress Plugin

Es ist geschafft: Mein erstes WordPress Plugin ist fertig!

In der letzten Zeit habe ich an einem Plugin gearbeitet, das es ermöglicht, Bugs, Chagelogs und Roadmaps aus Mantis direkt in WordPress einzubinden. So kann man auf Projektseiten immer über den aktuellen Status informieren. (Jetzt ratet mal, was ich vor habe ;))

So ein Plugin gibt es ansich schon, aber es wurde wohl von Autor aufgegeben und hatte auch nicht alle Funktionen, die ich mir gewünscht hatte. Also habe ich selber Hand angelegt und das ganze verbessert. Die Früchte meiner Arbeit kann man jetzt im offiziellen Repository betrachten: http://wordpress.org/extend/plugins/wp-mantis/

Wer noch Fehler findet darf sie gerne im Bugtracker melden. (oder hier in den Kommentaren)

Es will einfach nicht!

Seit ein paar Tagen quält mich ein Problem: Jetzt gebe ich es auf. Worum es geht..? Gut also der Reihe nach: Nico hat mich in den Kommentaren auf die Idee gebracht, ein Plugin zu schreiben, das für bestimmte Seiten ein anderes Theme anzeigt, als für den Rest des Blogs. Gesagt getan, relativ schnell hatte ich folgendes Gerüst:

<?php
$nr_pt_themed_PP = array('page2' => 'Default', 'post5' => 'Constructor');

function nr_pt_get_theme_for($page_or_post)
{
	global $nr_pt_themed_PP;

	if(array_key_exists($page_or_post, $nr_pt_themed_PP))
		return $nr_pt_themed_PP[$page_or_post];
	else
		return '';
}

//Helper. Returns the option from the selected theme, or the default value, if no theme selected
function nr_pt_GetOptionOrDefault($default, $option)
{
	if(is_page() || is_single())
		{
			global $post;
			$theme = nr_pt_get_theme_for($post->post_type . $post->ID);

			if(empty($theme))
				return $default; //no filtering
			else
			{
				$all_themes = get_themes();
				return $all_themes[$theme][$option];
			}
		}
		else
			return $default;
}

function nr_pt_filter_template($template)
{
	return nr_pt_GetOptionORDefault($template, 'Template');
}

function nr_pt_filter_stylesheet($stylesheet)
{
	return nr_pt_GetOptionORDefault($stylesheet, 'Stylesheet');
}

function nr_pt_filter_template_dir($template_dir)
{
	return nr_pt_GetOptionORDefault($template_dir, 'Template Dir');
}

function nr_pt_filter_stylesheet_dir($stylesheet_dir)
{
	return nr_pt_GetOptionORDefault($stylesheet_dir, 'Stylesheet Dir');
}
//Filters
add_filter('template', 'nr_pt_filter_template', 1); //1 is the priority, so this filter is the first!
add_filter('stylesheet', 'nr_pt_filter_stylesheet', 1);
add_filter('stylesheet_directory ', 'nr_pt_filter_stylesheet_dir', 1);
add_filter('template_directory ', 'nr_pt_filter_template_dir', 1);
?>

Weiterlesen

Änderungen am Blog

Nachdem ich ja schon WordPress geupdatet habe, habe die Gelegenheit aber auch gleich mal genutzt, und den Blog hier ein wenig modernisiert. So sehr ich mein altes Theme (freshy) auch mag, langsam hat man sich dran sattgesehen. Zudem finde ich ein helles Theme einfach schöner, und etwas breiter könntes es auch sein. Und siehe da: Es gibt so ein Theme. Es nennt sich Twenty Ten, und ist das neue WordPress Standart Theme. So ganz hat es mir dann doch nicht gefallen, und ich habe ein paar Sachen umgebaut (z.B. die Suchbox oben), besonders der CSS Teil ist ziemlich geraten, da meine CSS Kenntnisse sehr bescheiden sind 😉 Wenn irgendein Guru da noch Fehler sieht, immer her damit. Leider fehlen noch ein paar StyleSheets, so dass z.B. Downloads Link momentan einfache Links sind.

Aber nicht nur optisches hat sich geändert: Ich will auch ein paar alte Seiten umbauen. So standen z.B. die „Über diesen Blog“ und „Technische Informationen“ Seiten auf meiner Abschussliste. Eigentlich will ich die „Projekte“-Seite auch mal umbauen, und auch die Seiten für die eigentlichen Projekte gefallen mir noch nicht wirklich. Momentan sind die noch sehr Blog lastig, ich würde gerne mehr was wie das hier haben. Kennt jemand eine Möglichkeit (Plugin?) sowas in einen WordPress-Blog einzubauen? Ich denke, die neuen Menüs aus WP 3.0 können mir da helfen…

Weiterlesen

WordPress 3.0

Seit ein paar Tagen gibt es WordPress 3.0, also ein großes Update meine Blogsystems. gestern habe ich mich mal an ein Update gewagt, das auch wunderbar funktioniert hat. Fast. Gestern noch eine schnell Test gemacht, heute wieder die Hauptseite aufgerufen, was sehe ich? „Index.php wurde wegen Kompromittierung gelöscht.“ Entweder hat mein Hoster ein System, das Haking erkennt, und das hat wegen dem Update angeschlagen, oder meine Seite wurde wirklich gehackt. Ich tippe aber eher auf einen Fehler.

Leider hat es mein Hoster versäumt, mich deswegen mal anzuschreiben, ich habe den Fehler also auch grade erst bemerkt. Praktischer Weise kann WordPress sich selbst reparieren, dadurch ist jetzt alles wieder beim alten.

Weiterlesen

WordPress und Analytics mit Analyticator

Wie man ja den Datenschutzerklärungen entnehmen kann, wird auf diesem Blog Google Analytics eingesetzt. Bis jetzt hatte ich den Trackingcode manuell in den Footer kopiert. Keine große Sache, solange man ein wenig Ahnung von HTML hat. Jetzt habe ich aber ein tolles Plugin gefunden: Google Analyticator. Dieses Plugin wird zuerst mit eurem Google Account verbunden und liest so eure Analytics Accounts aus, und bindet automatisch den Trackingcode ein, sogar die neuest Version, die anasyncron arbeitet, also die Seite etwas beschleunigen sollte.

Das ist ja noch nichts besonderes, dafür gibt es viele Plugins, aber jetzt kommt das tolle: Wenn ihr eingelogged seit (sogar nach Rolle auswählbar) kann es den Trackingcode verstecken oder mit einer Variable versehen! Diese Variablen kann man man dann entweder in der Analytics Ansicht rausfiltern, oder den Filter noch eher ansetzen: Bei mir werden alle Besucher, die als admin gekennzeichnet sind, einfach nicht gezählt. Warum dann nicht einfach den Code verstecken? Der Code ist die Voraussetzung für das PageOverlay, wo dann für jeden Link die Klickrate angezeigt wird.

Weiterlesen

Windows Live Writer ausprobiert

Schon länger hatte ich vor, mir mal den Windows Live Writer anzusehen. Das Tool von Microsoft stammt auf deren “Live Essentials” das ist ja eine Sammlung Programmen, die bis Vista Standardmäßig dabei waren, die man jetzt “online erwerben” muss, sprich kostenlos runterladen muss. Dabei ist der Messenger, der Movie Maker, die Phot Gallery, “Famely Saftey” und halt eben das Blogging Tool Windows Live Writer.

Zunächst lädt man nur einen kleiner Installer, der dann die gewünschten Komponenten nachlädt. Danach kommt die Installation mit kleiner Schwächen:

Screenshot113

Weiterlesen

WordPress 2.9.1 und Freshy 2, Beiträge bewerten

Es gibt mal wieder eine neue Worpress Version! 2.9.1 Wieder etwas überstürzt, sprich mit ein paar fehlenden Übersetzungen. Im Frontend haben sie aber bis auf „Previous Posts“ alles übersetzt. Intern gab es scheinbar etwas mehr Änderungen, den plötzlich war meine Sidebar weg! Da ich bis jetzt noch nie Probleme mit eine Update hatte, habe ich auch kein Backup gemacht(dauert immer so lange :-(), das war aber ein Fehler…

Nach kurzer Suche habe ich hier einen Tipp gefunden:

In der functions.php des Themes (editierbar per Design/Editor) die folgen Zeile gegen die andere austauschen:

Weiterlesen

Kein Schnee mehr

So, die Weihnachtszeit ist vorbei, also ist auch der Schnee weg. Es soll ja Leute(oder Browser) geben die sich daran stören.

Wo wir grad bei Browsern sind: Der IE 7 ist doch tatsächlich grad wegen dem Schnee abgestürzt. Und auch die Adminoberfläche sieht grauenhaft aus! Keine Rundungen, alles ist eckig, AJAX kann fast vollkommen vergessen… Es funktioniert zwar, aber im Firefox sieht dopperlt so gut aus… Ich glaube der IE dürfe die WordPress Coder ziemlich nerven…

Statusbericht

So, in diesen Artikel kommt so einiges, für das ich keine eigen Beitrag machen will. Also quasi ein Info-Peitsche.

1. Ich hab wieder DSL. Zumindest vorläufig. Ich zitiere Dazu mal eine Mail an jemanden der genau das gleiche wissen wollte (Ja, ich bin zu faul das noch mal zu tippen):

Ich hab momentan DSL!

Leider nicht ganz so wie ich will… envacom(der alten Anbieter) hat am 1.12 die Zugangsdaten gesperrt, darum hatte ich kein DSL mehr. Ein paar Tage später hat er aber bemerkt, dass er die Ports nicht freigeben konnte, warum auch immer… Solange envacom den Port blockiert kann ich auch keinen anderen Anbieter haben. ABER: Damit envacom keine Ärger wegen Betrugs bekommt hat er die Zugansdaten wieder freigegeben, also habe ich erstmal wieder DSL, und zwar gratis. Wenn er jetzt die Ports freigibt kann easybell dann auch den Anschluss schalten…

Mal sehen wie das weitergeht…

Weiterlesen

WordPress Update

Da oben nervt mich so ein kleiner Balken mit der Aufschrift

WordPress 2.8 ist verfügbar! Bitte aktualisieren Sie jetzt.

Also werde ich das wohl mal machen müssen! Drückt mir die Daumen!

EDIT: Ok, das Update hat geklappt. Die Plugin Seite sieht anders aus, und einiges im Backend ist englisch, sonst ist mir nichts neues aufgefallen!

Noch mal EDIT: Heute gab es schon wieder ein neue Version, nach einem Timeout Problem des Servers habe ich sie dann auch installiert bekommen! Jetzt ist das Backend nicht mehr englisch… Da hätten die Entwickler auch gleich noch ne Woche warten können und dann gleich die deutsche Version veröffentlichen können…