Freien Speicher mit Munin überwachen

So, zurück aus dem Urlaub, da kann es ja weitergehen mit dem bloggen 😉

Wer Munin zum überwachen seine(r/s) Server(s) benutzt (wie ich) kennt wahrscheinlich auch den Graph, der die Speicherauslastung anzeigt. Der sieht ungefähr so aus:

Aber ganz ehrlich: Ich steige da nicht durch… Zum einen ist der Graph blöd skaliert (ich habe nur 200MB RAM, aber er geht bis 25GB), und man kann auch nicht wirklich erkennen, ob man nun noch Speicher hat oder nicht.

Also dachte ich mir, bauen ich doch mein altes Skript etwas um, und integriere es in Munin. Das ist gar nicht schwer, denn es gibt natürlich eine passende Anleitung.

Weiterlesen

WP Month Calendar

Mal wieder ein neues Plugin von mir: WP Month Calendar. Macht was der Name sagt: Es ist eine modifizierte Version des Kalender Widgets, das WordPress schon an Bord hat. Die Version von WordPress stellt immer einen Monat dar, meine ein ganzes Jahr, immer mit einem Link pro Monat. Im Tooltip sieht man dann die Beiträge aus diesem Monat.

Das ganze wurde aus Eigenbedarf geschrieben, ich wollte das Widget einsetzen, aber ich schreiben zu wenige Artikel um es zu füllen 😉

Weiterlesen

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

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

FastView Plugins entwickeln

Kleine Vorbemerkung: Ich habe erstmal wider eine DSL-Verbindung, aber nur 1000 kb/s…

Ich hatte es ja schon versprochen, jetzt gibt es ein Tutorial wie man FastView Plugins entwickeln kann. Das ganze habe ich so geschrieben, das man es auch verstehen kann, wenn man sich noch nicht so viel mit Visual Studio beschäftigt hat, aber C# Kenntnisse sollten schon vorhanden sein…

Lange Rede kurzer Sinn: Hier sind die Downloads:

Tutorial: FastView Plugins entwickeln (PDF)

FastView Zip-Plugin Sourcecode

Weiterlesen

Fast View 0.2.0

Nach ewiger Zeit gibt es eine neue Version von Fast View! Diese Version ist vollkommen anders als die erste, da ich sie fast vollständig neu geschrieben habe. Es hat leider sehr lange gedauert, aber ich glaube es hat sich gelohnt.

Hier ist der Changelog:

Bugfixes:

  • kein Absturz mehr, wenn MP3s geöffnet werden
  • Dateien werden nach schließen des Fensters freigegeben
  • kleinere interne Änderungen

Änderungen:

  • Neuer Hintergrund(danke an whsprogger)
  • Mehr Bilder, weniger Buttons

Neue Features: 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

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

Spamschutz muss sein!

Mein Blog hat schon über 300 Kommentare! Toll! Nur sind davon genau 99,08% Spam!

Ich habe zwar schon ein Anti Spam Plugin (Askimet) das auch bisher jeden Spammer aufgehalten hat, aber es nervt doch immer wieder die Liste durch zusehen und alle Kommentare zu löschen…

Darum habe ich ein neues Plugin, das euch jetzt eine Matheaufgabe stellt bevor ihr kommentieren könnt. Mir ist natürlich klar, das man das umgehen kann, aber ich denke die Arbeit macht sich keine Spammer… Sonst muss ich zu Capchas greifen, auch wenn ich die Dinger nicht mag…

Mal sehen was die Statistik für die nächsten Wochen zeigt!