<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Schnurpsel &#187; Plugin</title>
	<atom:link href="http://schnurpsel.de/nacht/plugin/feed/" rel="self" type="application/rss+xml" />
	<link>http://schnurpsel.de</link>
	<description>Das Putzlowitsch Testblog für alles mögliche</description>
	<lastBuildDate>Sun, 05 Sep 2010 17:40:26 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=Vista 7</generator>
	<language>de</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Was gibt&#8217;s Neues? &#8211; 123 Tweets</title>
		<link>http://schnurpsel.de/was-gibts-neues-123-tweets-310/</link>
		<comments>http://schnurpsel.de/was-gibts-neues-123-tweets-310/#comments</comments>
		<pubDate>Tue, 12 Jan 2010 11:31:18 +0000</pubDate>
		<dc:creator>Schnurpselchen</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Programmierung]]></category>
		<category><![CDATA[WP (Wordpress)]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Twitter]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://schnurpsel.de/was-gibts-neues-123-tweets-310/</guid>
		<description><![CDATA[
So sieht gerade mein Twitter-Status (Putzlowitsch) aus, also insgesamt habe ich bisher 123 Tweets abgesetzt. Bei &#8220;123 Tweets&#8221; sind mir spontan meine Wordpress-Plugins eingefallen, die ich auch immer &#8220;123 Irgendwas&#8221; nenne. Da müßte ich jetzt also mal ein Twitter-Plugin entwickeln, daß ich dann &#8220;123 Tweets&#8221; nennen kann.
Ich weiß zwar noch nicht genau, was das Plugin machen wird, aber eine Idee habe ich schon. Da <a href='http://schnurpsel.de/was-gibts-neues-123-tweets-310/' class='more-link'>...&#187;</a>]]></description>
			<content:encoded><![CDATA[<p><a class='imagelink' href='http://schnurpsel.de/wp-content/uploads/2010/01/putzlowitsch-123-tweets.png'><img src='http://schnurpsel.de/wp-content/uploads/2010/01/putzlowitsch-123-tweets.png' alt='Schnurpsel 123 Tweets' title='Schnurpsel 123 Tweets' /></a><br />
So sieht gerade mein Twitter-Status (<a href="http://twitter.com/Putzlowitsch">Putzlowitsch</a>) aus, also insgesamt habe ich bisher 123 Tweets abgesetzt. Bei &#8220;123 Tweets&#8221; sind mir spontan meine Wordpress-Plugins eingefallen, die ich auch immer &#8220;123 Irgendwas&#8221; nenne. Da müßte ich jetzt also mal ein Twitter-Plugin entwickeln, daß ich dann &#8220;123 Tweets&#8221; nennen kann.</p>
<p>Ich weiß zwar noch nicht genau, was das Plugin machen wird, aber eine Idee habe ich schon. Da ich Twitter bisher im wesentlichen als Linkschleuder für meine Blogartikel verwende, könnte ich das doch gleich automatisieren. Wenn ich einen neuen Artikel publiziere, wird wird gleich ein entsprechender Tweet abgesetzt. Na mal sehen&#8230; </p>
]]></content:encoded>
			<wfw:commentRss>http://schnurpsel.de/was-gibts-neues-123-tweets-310/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>BornToBeASeo &#8211; ein Plugintest</title>
		<link>http://schnurpsel.de/borntobeaseo-ein-plugintest-174/</link>
		<comments>http://schnurpsel.de/borntobeaseo-ein-plugintest-174/#comments</comments>
		<pubDate>Thu, 23 Jul 2009 14:56:02 +0000</pubDate>
		<dc:creator>Babsi</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Programmierung]]></category>
		<category><![CDATA[WP (Wordpress)]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://schnurpsel.de/borntobeaseo-ein-plugintest-174/</guid>
		<description><![CDATA[borntobeaseo
Eigentlich will ich für diese Anfrage nur testen, ob das 123 Moderate Comment Notification-Plugin auch unter Wordpress 2.8.x funktioniert. Da mir kein sinnvolles Thema eingefallen ist, muß nun wieder einmal borntobeaseo für den Test herhalten.
123 Moderate Comment Notification
Mit diesem Plugin kann man festlegen, wer alles eine E-Mail erhält, falls ein Kommentar z.B. zu borntobeaseo freigeschaltet werden muß. Normalerweise bekommt nur der Admin eine solche <a href='http://schnurpsel.de/borntobeaseo-ein-plugintest-174/' class='more-link'>...&#187;</a>]]></description>
			<content:encoded><![CDATA[<h3><a href="http://www.schloebe.de/borntobeaseo/">borntobeaseo</a></h3>
<p>Eigentlich will ich für <a href='http://schnurpsel.de/wordpress-plugins/123-moderate-comment-notification/#comment-402' title='Kommentar zu: 123 Moderate Comment Notification'>diese Anfrage</a> nur testen, ob das <a href='http://schnurpsel.de/wordpress-plugins/123-moderate-comment-notification/' title='123 Moderate Comment Notification'>123 Moderate Comment Notification</a>-Plugin auch unter Wordpress 2.8.x funktioniert. Da mir kein sinnvolles Thema eingefallen ist, muß nun wieder einmal <a href="http://putzlowitsch.de/2009/07/19/borntobeaseo-nicht-mein-niveau/">borntobeaseo</a> für den Test herhalten.</p>
<h3>123 Moderate Comment Notification</h3>
<p>Mit diesem Plugin kann man festlegen, wer alles eine E-Mail erhält, falls ein Kommentar z.B. zu borntobeaseo freigeschaltet werden muß. Normalerweise bekommt nur der Admin eine solche E-Mail. In Multiautorenblogs kann es aber sinnvoll sein, das auch die Autoren selbst Kommentare (sofern sie berechtigt sind) zu ihren eigenen Beiträgen moderieren, damit der Admin entlastet wird.</p>
<h3><a href='http://schnurpsel.de/borntobeaseo-born-to-be-a-seo-niveau-165/' title='BornToBeASeo &#8211; Born To Be A Seo &#8211; mit Niveau'>borntobeaseo</a> &#8211; bitte jetzt kommentieren :-)</h3>
<p>Damit ich nun sehe, ob tatsächlich auch Babsi eine E-Mail bekommt, muß hier jetzt bitte jemand einen Kommentar zu <em>borntobeaseo</em> hinterlassen. Danke!</p>
]]></content:encoded>
			<wfw:commentRss>http://schnurpsel.de/borntobeaseo-ein-plugintest-174/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>E-Mail bei Kommentar-Moderation</title>
		<link>http://schnurpsel.de/e-mail-bei-kommentar-moderation-112/</link>
		<comments>http://schnurpsel.de/e-mail-bei-kommentar-moderation-112/#comments</comments>
		<pubDate>Mon, 01 Dec 2008 18:37:26 +0000</pubDate>
		<dc:creator>Schnurpselchen</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Kommentar]]></category>
		<category><![CDATA[Konfiguration]]></category>
		<category><![CDATA[Plugin]]></category>

		<guid isPermaLink="false">http://schnurpsel.de/e-mail-bei-kommentar-moderation-112/</guid>
		<description><![CDATA[Wenn in Wordpress die Kommentarmoderation aktiviert ist und die Option
Mir eine E-Mail schicken, wenn
  [x] ein Kommentar auf Freischaltung wartet.

eingeschaltet wurde, erhält der Blogadmin an die Adresse, die bei &#8220;Allgemeinen Einstellungen&#8221; als &#8220;E-Mail-Adresse&#8221; eingetragen ist (normalerweise die bei der WP-Installtion angegeben) eine Nachricht über die anstehende Kommantarmoderation.
Das ist bei so einem &#8220;Ein-Mann-Blog&#8221; wie diesem hier auch kein Problem, denn ich bin Adminstrator, Herausgeber, <a href='http://schnurpsel.de/e-mail-bei-kommentar-moderation-112/' class='more-link'>...&#187;</a>]]></description>
			<content:encoded><![CDATA[<p>Wenn in Wordpress die Kommentarmoderation aktiviert ist und die Option</p>
<blockquote><p>Mir eine E-Mail schicken, wenn<br />
  [x] ein Kommentar auf Freischaltung wartet.</p>
</blockquote>
<p>eingeschaltet wurde, erhält der Blogadmin an die Adresse, die bei &#8220;Allgemeinen Einstellungen&#8221; als &#8220;E-Mail-Adresse&#8221; eingetragen ist (normalerweise die bei der WP-Installtion angegeben) eine Nachricht über die anstehende Kommantarmoderation.</p>
<p>Das ist bei so einem &#8220;Ein-Mann-Blog&#8221; wie diesem hier auch kein Problem, denn ich bin Adminstrator, Herausgeber, Redakteur und Autor in einer Person. Bei Blogs mit mehreren oder vielen Autoren, Redakteuren und Herausgebern wird das aber zum Problem, wenn die ganze Last der Moderation vom Kommentaren nur auf einem Paar Schultern ruht. In Wordpress selbst gibt es aber keine Option, mit der man festlegen könnte, das alle User mit der Berechtigung, Kommentare zu moderieren, eine entsprechende Nachricht erhalten.</p>
<p><a href='http://schnurpsel.de/wp-content/uploads/2008/12/plugin-123-moderate-comment.png'><img src="http://schnurpsel.de/wp-content/uploads/2008/12/plugin-123-moderate-comment-160x82.png" alt="Plugin 123 Moderate Comment Notification" title="Plugin 123 Moderate Comment Notification" width="160" height="82" class="alignleft size-thumbnail wp-image-113" /></a>Das Schöne an WP ist, daß man nahezu alles, was irgendwie fehlt, mit einem Plugin nachrüsten kann. Und so habe ich kurzerhand das Plugin &#8220;123 Moderate Comment Notification&#8221; geschrieben. Im Bereich der Einstellungen hat man drei Optionen:</p>
<ul>
<li>Administrator immer informieren</li>
<li>Autor informieren, wenn er Kommentare moderieren darf</li>
<li>Moderatoren informieren, falls Autor selbst nicht moderieren darf</li>
</ul>
<p>Wobe mit &#8220;Moderatoren&#8221; hier alle registrieren Blognutzer gemeint sind, die die Berechtigung zum moderieren von Kommentaren haben. Normalerweise sind das Nutzer mit der Rolle &#8220;Administrator&#8221; oder &#8220;Herausgeber/Redakteur&#8221;.</p>
<p>Heute hat sich das Plugin bereits zum ersten Mal in einem Mehrautoren-Blog erfolgreich bewährt.</p>
]]></content:encoded>
			<wfw:commentRss>http://schnurpsel.de/e-mail-bei-kommentar-moderation-112/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Neue Wordpressversion 2.5</title>
		<link>http://schnurpsel.de/neue-wordpressversion-25-87/</link>
		<comments>http://schnurpsel.de/neue-wordpressversion-25-87/#comments</comments>
		<pubDate>Wed, 09 Apr 2008 19:41:24 +0000</pubDate>
		<dc:creator>Schnurpselchen</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Strato]]></category>
		<category><![CDATA[Wordpressupdate]]></category>

		<guid isPermaLink="false">http://schnurpsel.de/neue-wordpressversion-25-87/</guid>
		<description><![CDATA[Der eine oder andere wird es schon bemerkt haben, ich habe von Wordpress 2.3.3 auf Worpress 2.5 upgedated. Da bin ich auch relativ unbeschwert rangegangen, da das hier sowieso mehr ein Testblog ist, welches zudem mit den Unzulänglichkeiten des Strato-Webhostings kämpfen muß. Dabei sind es schon erheblich weniger Schwierigkeiten geworden, was Strato und Wordpress anbelangt.
So konnte ich hier erstmal testen, ob meine eigenen Plugins <a href='http://schnurpsel.de/neue-wordpressversion-25-87/' class='more-link'>...&#187;</a>]]></description>
			<content:encoded><![CDATA[<p>Der eine oder andere wird es schon bemerkt haben, ich habe von Wordpress 2.3.3 auf Worpress 2.5 upgedated. Da bin ich auch relativ unbeschwert rangegangen, da das hier sowieso mehr ein Testblog ist, welches zudem mit den Unzulänglichkeiten des Strato-Webhostings kämpfen muß. Dabei sind es schon erheblich <a href='http://schnurpsel.de/strato-wird-vernunfig-mod_rewrite-funktioniert-79/' title='Strato wird vernünfig, mod_rewrite funktioniert'>weniger</a> <a href='http://schnurpsel.de/strato-wird-vernunfig-42/' title='Strato wird vernünfig'>Schwierigkeiten</a> geworden, was Strato und Wordpress anbelangt.</p>
<p>So konnte ich hier erstmal testen, ob meine eigenen Plugins funktionieren. Ja, das tun sie. Wobei ich das eine oder andere an die neuen Möglichkeiten von Wordpress 2.5 anpassen werde oder schon angepaßt habe. Zudem ist mir grad ein nettes Feature aufgefallen, wenn man Tags (Stichwörter) eingeben will. Dann klappt nach Eingabe von mindestens zwei Zeichen eine Auswahlliste auf, aus der man dann einfach ein passendes, schon vorhandenes Stichwort auswählen kann. Fein Sache, das.</p>
]]></content:encoded>
			<wfw:commentRss>http://schnurpsel.de/neue-wordpressversion-25-87/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hinweis für Wordpress-Plugin-Programmierer</title>
		<link>http://schnurpsel.de/hinweis-fur-wordpress-plugin-programmierer-82/</link>
		<comments>http://schnurpsel.de/hinweis-fur-wordpress-plugin-programmierer-82/#comments</comments>
		<pubDate>Sat, 15 Mar 2008 17:03:22 +0000</pubDate>
		<dc:creator>Schnurpselchen</dc:creator>
				<category><![CDATA[Programmierung]]></category>
		<category><![CDATA[WP (Wordpress)]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://schnurpsel.de/hinweis-fur-wordpress-plugin-programmierer-82/</guid>
		<description><![CDATA[Das einfachste Plugin für Wordpress besteht nur aus einer PHP-Datei, da gibt es auch keine Probleme. Wenn man aber das Plugin modular gestaltet, eventuell noch Grafiken, Stylesheets oder JavaScript-Dateien laden will, fangen die Schwierigkeiten an.
Das Nachladen von PHP-Modulen ist noch relativ einfach, sofern sich die Dateien im selben Verzeichnis wie das Hauptmodul befinden. Da reicht ein einfaches
include( 'modul-2.php');
 und man muß sich keine Gedanken <a href='http://schnurpsel.de/hinweis-fur-wordpress-plugin-programmierer-82/' class='more-link'>...&#187;</a>]]></description>
			<content:encoded><![CDATA[<p>Das einfachste Plugin für Wordpress besteht nur aus einer PHP-Datei, da gibt es auch keine Probleme. Wenn man aber das Plugin modular gestaltet, eventuell noch Grafiken, Stylesheets oder JavaScript-Dateien laden will, fangen die Schwierigkeiten an.</p>
<p>Das Nachladen von PHP-Modulen ist noch relativ einfach, sofern sich die Dateien im selben Verzeichnis wie das Hauptmodul befinden. Da reicht ein einfaches
<pre>include( 'modul-2.php');</pre>
<p> und man muß sich keine Gedanken über Pfade und Verzeichnisse machen.</p>
<p>Anders ist es bei Grafik-, CSS- oder Javascript-Dateien. Hier wird eine gültige URL benötigt, also muß man das Verzeichnis wissen, in dem sich das Plugin befindet. Und zwar nicht den absoluten Pfad auf dem Server, sondern den Pfad bezogen auf die Webseiten-Adresse. Häufig sieht man dann so etwas:</p>
<pre>$css = get_option( 'siteurl' ).'/wp-content/plugins/my-plugin/my-style.css';</pre>
<p>Es wird also einfach davon ausgegangen, daß Plugins immer im Verzeichnis &#8216;wp-content/plugins&#8217; liegen. Das müssen sie aber nicht, denn in Wordpress ist dafür extra die Konstante <strong>PLUGINDIR</strong> vorgesehen.</p>
<p>Diese wird in der wp-settings.php wie folgt definiert:</p>
<pre>if ( !defined('PLUGINDIR') )
	define('PLUGINDIR', 'wp-content/plugins'); // no leading slash, no trailing slash</pre>
<p>Das <em>if ( !defined(&#8216;PLUGINDIR&#8217;) )</em> läßt erahnen, daß es durchaus vorgesehen ist, hier auch vorab ein anderes Verzeichnis zu definieren. Ganau davon mache ich Gebrauch, indem ich ein abweichendes Plugin-Verzeichnis in der wp-config.php definieren. Das ist eine einfache Möglichkeit, sich ein wenig vor Angriffen auf Schwachstellen in Plugins zu schützen. Denn auch die meisten Angreifer gehen davon aus, daß sie Plugins in Verzeichnis &#8216;wp-content/plugins&#8217; liegen, sofern sie <a href='http://schnurpsel.de/skriptkiddies-sind-doof-69/' title='Skriptkiddies sind doof'>überhaupt so intelligent</a> sind.</p>
<p>Wenn nun ein Plugin selbst einfach &#8216;wp-content/plugins&#8217; anstelle von PLUGINDIR verwendet, sind Schwierigkeiten vorprogrammiert. Deshalb, liebe Plugin-Programmierer, verwendet bitte immer PLUGINDIR, um Pfade zusammenzusetzen. Für das obige Beispiel könnte das etwa so aussehen:</p>
<pre>$css = get_option( 'siteurl' ).'/'. PLUGINDIR.'/my-plugin/my-style.css';</pre>
<p>Ich verwende z.B. folgende Funktion, damit ich auch unabhängig davon bin, in welchem Unterverzeichnis innerhalb des Pluginverzeichnisses die Dateien liegen:</p>
<pre>// ermittelt das Pluginverzeichnis
function plw123_plugin_basedir( $file ) {
	$file = str_replace('\\','/',$file); // Windows Verzeichnistrenner "umkippen"
	$file = preg_replace('|/+|','/', $file); // doppelte Schrägstriche entfernen
	$file = preg_replace('|^.*/' . PLUGINDIR . '/|','',$file); // relativen Pfad zum Plugin-Dir ermitteln
	return '/'.PLUGINDIR."/$file/";
}

...

$pluginPath = plw123_plugin_basedir( dirname(__FILE__) );
$css = get_option( 'siteurl' ).$pluginPath.'my-style.css';
</pre>
]]></content:encoded>
			<wfw:commentRss>http://schnurpsel.de/hinweis-fur-wordpress-plugin-programmierer-82/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Es geht doch, Kontaktformular mit POST und Permalinks</title>
		<link>http://schnurpsel.de/es-geht-doch-kontaktformular-mit-post-und-permalinks-71/</link>
		<comments>http://schnurpsel.de/es-geht-doch-kontaktformular-mit-post-und-permalinks-71/#comments</comments>
		<pubDate>Thu, 06 Dec 2007 21:50:22 +0000</pubDate>
		<dc:creator>Schnurpselchen</dc:creator>
				<category><![CDATA[Konfiguration]]></category>
		<category><![CDATA[Tips & Tricks]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[Kontaktformular]]></category>
		<category><![CDATA[Permalink]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Strato]]></category>

		<guid isPermaLink="false">http://schnurpsel.de/es-geht-doch-kontaktformular-mit-post-und-permalinks-71/</guid>
		<description><![CDATA[Mein 123 No Rewrite Permalink Plugin hat einen kleinen Nachteil, es können keine Formulardaten per POST an eine Permalinkseite gesendet werden. Deshalb funktionieren z.B. Kontaktformular-Plugins wie der &#8220;DD Formmailer&#8221; nicht. Ich habe auf der Pluginseite und auch bei meiner Strato-Permalink-Konfigurationsseite darauf hingewiesen.
Angeregt durch einen Beitrag im WP-Deutschland-Forum habe ich noch mal über das Problem nachgedacht und bin auf eine recht einfache Lösung gekommen. Diese <a href='http://schnurpsel.de/es-geht-doch-kontaktformular-mit-post-und-permalinks-71/' class='more-link'>...&#187;</a>]]></description>
			<content:encoded><![CDATA[<p>Mein <a href="http://putzlowitsch.de/123-no-rewrite-permalink/">123 No Rewrite Permalink</a> Plugin hat einen kleinen Nachteil, es können keine Formulardaten per POST an eine Permalinkseite gesendet werden. Deshalb funktionieren z.B. Kontaktformular-Plugins wie der &#8220;DD Formmailer&#8221; nicht. Ich habe auf der Pluginseite und auch bei meiner <a href='http://schnurpsel.de/wordpress-bei-strato/wordpress-permalinks/' title='Wordpress Permalinks'>Strato-Permalink-Konfigurationsseite</a> darauf hingewiesen.<br />
Angeregt durch einen <a href="http://forum.wordpress-deutschland.org/plugins-und-widgets/27923-kontaktformulare-funktionieren-grundsaetzlich-nicht.html">Beitrag im WP-Deutschland-Forum</a> habe ich noch mal über das Problem nachgedacht und bin auf eine recht einfache Lösung gekommen. Diese ist zumindest dann praktikabel, wenn es nur um eine oder wenige Seiten mit Formularen geht, in der Regel wird es nur eine Seite für &#8220;Kontakt&#8221; oder ähnliches sein. Am Beispiel des schon erwähnten <a href="http://www.dagondesign.com/articles/secure-form-mailer-plugin-for-wordpress/">DD-Formmailers</a> werde ich die erforderlichen Schritte beschreiben. Ich gehe davon aus, daß das Formmailer-Plugin bereits installiert ist.</p>
<p>Zunächst wird eine neue statische Seite erstellt, die z.B. &#8220;Kontakt&#8221; heißt. Hier wird der Text und Code für den Formmailer eingegeben. Die URL der Seite lautet dann beispielsweise
<pre>http://schnurpsel.de/kontakt/</pre>
<p>Diese wird bei den Einstellungen für den DD-Formmailer als <strong>&#8220;Contact page&#8221;</strong> eingetragen.</p>
<p>Dann wird eine Kopie der Datei <em>index.php</em> aus dem Wordpress-Wurzelverzeichnis erstellt und bearbeitet.<br />
Originale <em>index.php</em>:</p>
<pre>&lt;?php
/* Short and sweet */
define('WP_USE_THEMES', true);
require('./wp-blog-header.php');
?&gt;</pre>
<p>Bearbeitete <em>index.php</em>:</p>
<pre>&lt;?php
/* Short and sweet */
define('WP_USE_THEMES', true);
require('../wp-blog-header.php');
?&gt;</pre>
<p>Kleine Änderung, große Wirkung, es ist nur ein Punkt beim require hinzugekommen.<br />
Nun wird per FTP im WP-Wurzelverzeichnis ein Unterverzeichnis <em>/kontakt/</em> angelegt und die geänderte <em>index.ph</em>p dort hinein kopiert.</p>
<p>Das wars, jetzt kann man die Kontaktseite aufrufen und Daten absenden, sofern man sonst auch alles andere beim DD-Formmailer richtig konfiguriert hat.<br />
Man kann das auch bei mir hier testen, unter Kontakt, wo sonst? :-)</p>
<p>Und zum Schluß noch ein <strong>wichtiger Hinweis</strong>: Falls man im WP-Wurzelverzeichnis eine <em>php.ini</em> hat, muß diese ebenfalls mit in das <em>/kontakt/</em>-Verzeichnis kopiert werden, denn im Unterschied zur <em>.htaccess</em> werden die dort gemachten Einstellungen nicht auf Unterverzeichnisse &#8220;vererbt&#8221;.</p>
]]></content:encoded>
			<wfw:commentRss>http://schnurpsel.de/es-geht-doch-kontaktformular-mit-post-und-permalinks-71/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Wordpress 2.3 &#8211; Problem ohne www bei Strato</title>
		<link>http://schnurpsel.de/wordpress-23-problem-ohne-www-bei-strato-65/</link>
		<comments>http://schnurpsel.de/wordpress-23-problem-ohne-www-bei-strato-65/#comments</comments>
		<pubDate>Sat, 29 Sep 2007 15:34:53 +0000</pubDate>
		<dc:creator>Schnurpselchen</dc:creator>
				<category><![CDATA[Konfiguration]]></category>
		<category><![CDATA[Tips & Tricks]]></category>
		<category><![CDATA[WP (Wordpress)]]></category>
		<category><![CDATA[Endlosschleife]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Strato]]></category>
		<category><![CDATA[Weiterleitung]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[www]]></category>

		<guid isPermaLink="false">http://schnurpsel.de/wordpress-23-problem-ohne-www-bei-strato-65/</guid>
		<description><![CDATA[Hintergrund
Es war mir ja schon fast am Anfang meiner Strato-Zeit aufgefallen. Die Servervariable HTTP_HOST liefert immer den Hostname mit einem vorangestellten www zurück, selbst dann, wenn der Aufruf ohne www erfolgte. Eigentlich eine eigenwillige, wenn nicht gar falsche Konfiguration des Strato-Severs, denn die Variable HTTP_HOST soll eigentlich genau das enthalten, was der Browser im HTTP-Requestheader übermittelt. Wenn ich also die Seite schnurpsel.de aufrufe, dann <a href='http://schnurpsel.de/wordpress-23-problem-ohne-www-bei-strato-65/' class='more-link'>...&#187;</a>]]></description>
			<content:encoded><![CDATA[<h3>Hintergrund</h3>
<p>Es war mir ja schon fast am Anfang meiner Strato-Zeit aufgefallen. Die Servervariable HTTP_HOST liefert immer den Hostname mit einem vorangestellten www zurück, selbst dann, wenn der Aufruf ohne www erfolgte. Eigentlich eine eigenwillige, wenn nicht gar falsche Konfiguration des Strato-Severs, denn die Variable HTTP_HOST soll eigentlich genau das enthalten, was der Browser im HTTP-Requestheader übermittelt. Wenn ich also die Seite schnurpsel.de aufrufe, dann sollte eben das da drin stehen, und nicht etwa www.schnurpsel.de. Aber genau das passiert bei Strato (PowerWeb A und S).</p>
<h3>Problem</h3>
<p>Bisher stellte das auch kein Problem dar, mit dem Neuen Wordpress 2.3 aber schon (deshalb war meine Seite gestern Abend auch zeitweise nicht erreichbar). Ab Wordpress 2.3 ist eine Funktion integriert, die ein sogenanntes &#8220;<a href="http://markjaquith.wordpress.com/2007/09/25/wordpress-23-canonical-urls/">Canonical Redirect</a>&#8221; ausführt. Auf das Strato-Problem bezogen bedeutet das, daß eine Weiterleitung z.B. dann stattfindet, wenn der Aufruf der Seite nicht so erfolgt, wie das in der Wordpresskonfiguration eingestellt ist.<br />
Wenn z.B in Wordpress als Blog-Adresse (URL)
<pre>http://schnurpsel.de</pre>
<p> eingetragen ist, jemand aber die Seite mit
<pre>http://www.schnurpsel.de</pre>
<p> aufruft, wird er auf
<pre>http://schnurpsel.de</pre>
<p> umgeleitet (und anders rum). An sich eine sinnvolle Sache, gerade unter SEO-Aspekten.</p>
<p>Was passiert nun aber bei Strato? Die funktion <em>redirect_canonical</em> schaut in HTTP_HOST nach, wie die Seite aufgerufen wurde, stellt fest, daß da ein www steht, aber das Blog ohne www konfiguriert ist. Also wird flux auf die Adresse ohne <em>www</em> weitergeleitet (diese Information bekommt der Browser zurück). Der ruft dann brav die Seite erneut ohne <em>www</em> auf, weil aber Strato das <em>www</em> wieder vorneran stellt, leitet <em>redirect_canonical</em> erneut um, der Browser ruft wieder brav ohne <em>www</em> auf usw. usw. Es ensteht also eine Weiterleitungs-Endlosschleife, die der Browser dann aber (hoffentlich) nach ein paar Versuchen mit einer Meldung beenden sollt. Beim Firefox sieht das dann so aus:</p>
<blockquote><p><strong>Fehler: Umleitungsfehler</strong><br />
Die aufgerufene Website leitet die Anfrage so um, dass sie nie beendet werden kann.</p></blockquote>
<p>Das alles tritt aber nur beim Blog selber auf, der Adminbereich ist davon nicht betroffen.</p>
<h3>Lösung</h3>
<p>Aber auch hier gibt es mit einem bißchen Basteln Abhilfe. Glücklicherweise gibt es in den Servervariablen einen Eintrag, der die tatsächlich aufgerufene Adresse enthält, nämlich SCRIPT_URI. Dieser enthält die vollständigen Aufrufadresse mit http und gegebenfalls Verzeichnis und Dateiname, z.B.
<pre>http://schnurpsel.de</pre>
<p> Hier kann man einfach den echten Hostanamen extrahieren und der Variable HTTP_HOST zuweisen. Und schon ist die Welt wieder in Ordnung :-)</p>
<p>Also Wordpress-Plugin sehen die paar Zeilen PHP-Code dann so aus:</p>
<pre>&lt;?php
/*
Plugin Name: 123 True HTTP Host
Plugin URI: http://schnurpsel.de/wordpress-23-problem-ohne-www-bei-strato-65/
Description: Setzt den wahren HTTP_HOST aus dem Request. Bei Strato wird immer www davor geschrieben.
Author: Ingo Henze
Version: 0.10
Author URI: http://putzlowitsch.de/
*/
$plw123thh = parse_url( $_SERVER['SCRIPT_URI'] );
if( isset( $plw123thh['host'] ) &#038;&#038; ($plw123thh['host']!=$_SERVER['HTTP_HOST']) )
  $_SERVER['HTTP_HOST'] = $plw123thh['host'];
?&gt;</pre>
<p>Mann kann den Quelltext hier einfach rauskopieren, in einer Datei speichern,auf den Server in das Pluginverzeichnis kopieren und aktivieren. Oder man nimmt das fertige Plugin als ZIP-Datei.</p>
<p><strong>Download:</strong> <a href='http://schnurpsel.de/wp-content/uploads/2007/09/plw123_true_http_host_0_10.zip' title='123 True HTTP Host 0.10'>123 True HTTP Host 0.10</a></p>
<p>Im Übrigen tritt das Problem mit der Weiterleitungs-Endlosschleife bei einer Konfiguration mit <em>www</em> nicht auf, allerdings funktioniert dann das redirect_canonical auch nicht, weil die Seiten ja scheinbar immer korrekt mit <em>www</em> aufgerufen werde.</p>
]]></content:encoded>
			<wfw:commentRss>http://schnurpsel.de/wordpress-23-problem-ohne-www-bei-strato-65/feed/</wfw:commentRss>
		<slash:comments>104</slash:comments>
		</item>
		<item>
		<title>Wordpress 2.3 &#8211; Plugins oder my-hacks bei der Installation aktivieren</title>
		<link>http://schnurpsel.de/wordpress-23-plugins-oder-my-hacks-bei-der-installation-aktivieren-63/</link>
		<comments>http://schnurpsel.de/wordpress-23-plugins-oder-my-hacks-bei-der-installation-aktivieren-63/#comments</comments>
		<pubDate>Thu, 27 Sep 2007 07:47:05 +0000</pubDate>
		<dc:creator>Schnurpselchen</dc:creator>
				<category><![CDATA[Tips & Tricks]]></category>
		<category><![CDATA[WP (Wordpress)]]></category>
		<category><![CDATA[aktivieren]]></category>
		<category><![CDATA[Installation]]></category>
		<category><![CDATA[my-hacks]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://schnurpsel.de/wordpress-23-plugins-oder-my-hacks-bei-der-installation-aktivieren-63/</guid>
		<description><![CDATA[Bereits seit Wordpress 2.1 gibt es ein vermutlich eher unbekanntes Feature, mit dem man bereits bei der Installation eines neuen, nackten Wordpress benutzerdefinierte Aktionen ausführen kann. Schlüssel dazu ist eine Datei install.php, welche sich im Verzeichnis wp-content befinden muß. Ist also bei der Installation die Datei wp-content/install.php vorhanden, wird deren Inhalt noch vor den WP-eigenen Installtionsfunktionen geladen und kann damit z.B. die wp_install ersetzen.
Am <a href='http://schnurpsel.de/wordpress-23-plugins-oder-my-hacks-bei-der-installation-aktivieren-63/' class='more-link'>...&#187;</a>]]></description>
			<content:encoded><![CDATA[<p>Bereits seit Wordpress 2.1 gibt es ein vermutlich eher unbekanntes Feature, mit dem man bereits bei der Installation eines neuen, nackten Wordpress benutzerdefinierte Aktionen ausführen kann. Schlüssel dazu ist eine Datei <em>install.php</em>, welche sich im Verzeichnis <em>wp-content</em> befinden muß. Ist also bei der Installation die Datei <em>wp-content/install.php</em> vorhanden, wird deren Inhalt noch vor den WP-eigenen Installtionsfunktionen geladen und kann damit z.B. die <em>wp_install</em> ersetzen.</p>
<p>Am einfachtesten ist es, sich die gewünschte Funktion aus der Datei <em>wp-admin/include/updrade.php</em> (früher <em>wp-admin/upgrade-functions.php</em> ) zu kopieren, die notwendigen Änderungen vorzunehmen und das dann in <em>wp-content/install.php</em> zu speichern.</p>
<p>Und wofür ist das nun gut?<br />
Ich hatte ja zum Problem <a href='http://schnurpsel.de/wordpress-23-anonym-up-to-date-bleiben-59/' title='Wordpress 2.3 &#8211; Anonym up-to-date bleiben'>WP 2.3 Plugincheck</a> geschrieben, das es bei der Neuinstallation auf Grund des Henne-Ei-Problems normalerweise nicht möglich ist, das Plagin zu aktivieren, ohne mindestens einmal die Pluginseite aufgerufen zu haben und damit bereits die Daten an wordpress.org zu senden. Das ist nun mit so einer benutzerdefinierten install.php möglich.</p>
<p>Download:</strong> <a href='http://schnurpsel.de/wp-content/uploads/2007/09/install.zip' title='Benutzerdefinierte install.php'>Benutzerdefinierte install.php</a> (als ZIP)</p>
<p>Diese Datei enthält nichts weiter, als die originale WP-Installationsfunktion, am Ende durch folgende Programmzeilen ergänzt:</p>
<pre>// Automatische aktiviere von Plugins oder der my-hacks.php
// Plugins
$active_plugins = get_option( 'active_plugins' );
$active_plugins[] = 'plw123_anon_vchek.php';  // hier den Plugin-Dateiname eintragen
update_option( 'active_plugins', $active_plugins );
// my-hacks.php
// update_option( 'hack_file', 1 );</pre>
<p>Das mit der my-hacks.php ist auskommentiert, es soll nur das Prinzip veranschaulichen.</p>
<p>Wie sieht nun also eine Wordpress 2.3 Neuinstallation aus:</p>
<ul>
<li>Wie gewohnt alle Wordpressdateien auf den Server übertragen (wp-config.php nicht vergessen)</li>
<li>zusätzlich das <a href='http://schnurpsel.de/wordpress-23-anonym-up-to-date-bleiben-plugin-61/' title='WP 2.3 &#8211; Anonym up-to-date bleiben &#8211; Plugin'>Plugin</a> in das Pluginverzeichnis kopieren</li>
<li>zusätzlich die benutzerdefinierte install.php in das Verzeichnis <em>wp-content</em> kopieren</li>
<li>Wordpressinstallation wie gewohnt starten</li>
</ul>
<p>Fertig!</p>
<p>Viel Spaß mit dem anonymisierten, neuen Wordpress 2.3 :-)</p>
<p><strong>Nachtrag:</strong> <a href="http://uwr1.de/">Hannes</a> hat auch ein <a href="http://f00f.de/blog/2007/09/27/stille-auf-knopfdruck-anonyme-plugin-update-checks.html">Plugin</a> geschrieben, welches zusätzlich noch die Pluginliste entschlackt. Sein Plugin kann man natürlich auch mit der beschriebenen Methode gleich bei der Installation aktivieren. Dazu muß einfach nur der Name geändert werden, also an Stelle von:</p>
<pre>$active_plugins[] = 'plw123_anon_vchek.php';  // hier den Plugin-Dateiname eintragen</pre>
<p>entsprechend</p>
<pre>$active_plugins[] = 'anonymous-plugin-updates.php';  // hier den Plugin-Dateiname eintragen</pre>
<p>Und es muß auch in das Pluginverzeichnis kopiert werden, das ist ja klar.</p>
]]></content:encoded>
			<wfw:commentRss>http://schnurpsel.de/wordpress-23-plugins-oder-my-hacks-bei-der-installation-aktivieren-63/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>WP 2.3 &#8211; Anonym up-to-date bleiben &#8211; Plugin</title>
		<link>http://schnurpsel.de/wordpress-23-anonym-up-to-date-bleiben-plugin-61/</link>
		<comments>http://schnurpsel.de/wordpress-23-anonym-up-to-date-bleiben-plugin-61/#comments</comments>
		<pubDate>Wed, 26 Sep 2007 12:58:53 +0000</pubDate>
		<dc:creator>Schnurpselchen</dc:creator>
				<category><![CDATA[Tips & Tricks]]></category>
		<category><![CDATA[WP (Wordpress)]]></category>
		<category><![CDATA[Datenschutz]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://schnurpsel.de/wordpress-23-anonym-up-to-date-bleiben-plugin-61/</guid>
		<description><![CDATA[Vorgestern hatte ich meinen Hack gegen die Übertragung einiger Daten (Blog-URL, aktive Plugins) beim neuen WP 2.3 Versionscheck vorgestellt. Nun scheint es aber eine gewisse Unsicherheit bei oder Abneigung gegen die Verwendung der, von WP selbst als veraltete bezeichneten, my-hacks.php zu geben. Deshalb habe ich das Ganze hier noch mal als Plugin verpackt.
Man bedenke aber, das man zum Aktivieren des Plugins im Backend die <a href='http://schnurpsel.de/wordpress-23-anonym-up-to-date-bleiben-plugin-61/' class='more-link'>...&#187;</a>]]></description>
			<content:encoded><![CDATA[<p>Vorgestern hatte ich <a href='http://schnurpsel.de/wordpress-23-anonym-up-to-date-bleiben-59/' title='Wordpress 2.3 &#8211; Anonym up-to-date bleiben'>meinen Hack</a> gegen die Übertragung einiger Daten (Blog-URL, aktive Plugins) beim neuen WP 2.3 Versionscheck vorgestellt. Nun scheint es aber eine gewisse Unsicherheit bei oder Abneigung gegen die Verwendung der, von WP selbst als veraltete bezeichneten, my-hacks.php zu geben. Deshalb habe ich das Ganze hier noch mal als Plugin verpackt.<br />
Man bedenke aber, das man zum Aktivieren des Plugins im Backend die Plugin-Seite aufrufen muß und dadurch mindestens einmal alle Daten ungefiltert an api.wordpress.org übertragen werden.</p>
<p>Wenn man sein System von einer älteren Wordpress-Version updatet, ist das kein Probelm. Dann kann man das Plugin einfach vor dem Update installieren und aktivieren. Bei einer Neuinstalltion müßte man aber, bevor man irgendwas anderes macht, das Plugin direkt in der Datenbank aktivieren, was ein bißchen fummelig ist. Zudem setzt man die Filterung auch außer Kraft, wenn man z.B. mit der Funktion &#8220;Deaktivier alle Plugins&#8221; alle Plugins ausschaltet.</p>
<p><strong>NEU:</strong> Auch die Pluginversion kann <a href='http://schnurpsel.de/wordpress-23-plugins-oder-my-hacks-bei-der-installation-aktivieren-63/' title='Wordpress 2.3 &#8211; Plugins oder my-hacks bei der Installation aktivieren'>bei einer Neuinstallation</a> verwendet!</p>
<p>Wie auch immer, hier nun das &#8220;123 Anonymer Versionscheck&#8221;-Plugin.</p>
<p><strong>Download:</strong> <a href='http://schnurpsel.de/wp-content/uploads/2007/09/plw123_anon_vchek_0_10.zip' title='123 Anonymer Versionscheck 0.10'>123 Anonymer Versionscheck 0.10</a></p>
<p>Die Funktionsweise entspricht exakt der Hack-Version. Weitere Informationen bitte <a href='http://schnurpsel.de/wordpress-23-anonym-up-to-date-bleiben-59/' title='Wordpress 2.3 &#8211; Anonym up-to-date bleiben'>dort nachlesen</a>.</p>
<p><strong>Weitere Plugins zum Thema</strong></p>
<ul>
<li>Hannes ersetzt in seinem <a href="http://f00f.de/blog/2007/09/27/stille-auf-knopfdruck-anonyme-plugin-update-checks.html">Plugin</a> die Updatefunktion mit einer angepaßten eigenen Version und reduziert dort auch die übertragene Pluginliste auf die notwendigen Daten.</li>
<li><a href="http://www.ilfilosofo.com/blog/tinfoil-hat/">Filosofo’s Tinfoil-Hat Plugin</a> bringt gleich ein komplett neues Updatesystem mit, doktert also nicht nur an den Symptomen rum, sondern mach gleich &#8220;Nägel mit Köpfen&#8221;.</li>
</ul>
<p>Diese Plugins lassen sich auch mit <a href='http://schnurpsel.de/wordpress-23-plugins-oder-my-hacks-bei-der-installation-aktivieren-63/' title='Wordpress 2.3 &#8211; Plugins oder my-hacks bei der Installation aktivieren'>dieser Methode</a> bereits bei der Neuinstallation aktivieren.</p>
]]></content:encoded>
			<wfw:commentRss>http://schnurpsel.de/wordpress-23-anonym-up-to-date-bleiben-plugin-61/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Der Haken am Trick</title>
		<link>http://schnurpsel.de/der-haken-am-trick-53/</link>
		<comments>http://schnurpsel.de/der-haken-am-trick-53/#comments</comments>
		<pubDate>Mon, 30 Jul 2007 17:07:44 +0000</pubDate>
		<dc:creator>Schnurpselchen</dc:creator>
				<category><![CDATA[WP (Wordpress)]]></category>
		<category><![CDATA[IIS]]></category>
		<category><![CDATA[Permalink]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Rewrite]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://schnurpsel.de/der-haken-am-trick-53/</guid>
		<description><![CDATA[Vor einiger Zeit hatte ich das 123 IIS Permalink-Plugin vorgestellt. Durch Kommentare zum 123 No Rewrite Permalink-Plugin wurde ich auf ein Problem aufmerksam gemacht, welches sich auch beim IIS auswirkt. Erfreulicherweise kann man das beim IIS im Unterschied zum Apache-Server wieder ausbügeln, da hier die POST-Daten nicht verloren gehen.
So gibt es nun also eine neue Version 0.11 des 123 IIS Permalink-Plugins, die auch mit <a href='http://schnurpsel.de/der-haken-am-trick-53/' class='more-link'>...&#187;</a>]]></description>
			<content:encoded><![CDATA[<p>Vor einiger Zeit hatte ich das <a href='http://schnurpsel.de/exoten-51/' title='Exoten'>123 IIS Permalink</a>-Plugin vorgestellt. Durch Kommentare zum <a href="http://putzlowitsch.de/123-no-rewrite-permalink/#comment-773">123 No Rewrite Permalink</a>-Plugin wurde ich auf ein Problem aufmerksam gemacht, welches sich auch beim IIS auswirkt. Erfreulicherweise kann man das beim IIS im Unterschied zum Apache-Server wieder ausbügeln, da hier die POST-Daten nicht verloren gehen.</p>
<p>So gibt es nun also eine neue Version 0.11 des <a href="http://putzlowitsch.de/123-iis-permalink/">123 IIS Permalink-Plugins</a>, die auch mit Datenübergabe per POST oder GET funktioniert. Nebenbei habe ich gleich noch eine permanente Weiterleitung (301) der alten &#8216;/index.php/irgendwas&#8217;-Aufrufe eingebaut. So braucht man sich wegen alter Permalinks z.B. bei Google keine Sorgen zu machen.</p>
]]></content:encoded>
			<wfw:commentRss>http://schnurpsel.de/der-haken-am-trick-53/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IIS Wordpress Permalinks</title>
		<link>http://schnurpsel.de/iis-wordpress-permalinks-52/</link>
		<comments>http://schnurpsel.de/iis-wordpress-permalinks-52/#comments</comments>
		<pubDate>Fri, 29 Jun 2007 15:58:31 +0000</pubDate>
		<dc:creator>Schnurpselchen</dc:creator>
				<category><![CDATA[Konfiguration]]></category>
		<category><![CDATA[IIS]]></category>
		<category><![CDATA[Permalink]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Rewrite]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://schnurpsel.de/iis-wordpress-permalinks-52/</guid>
		<description><![CDATA[Ja, es war mir schon klar, daß ich nicht der erste bin, der sich dieses Problems annimmt. Bei wordpress.org selbst ist es im Codex unter dem Titel  &#8220;Using Permalinks Without mod_rewrite&#8221; bereits angeschnitten und es gibt auch drei Lösungen dafür. Zwei gehen den Weg über ein spezielles ISAPI-Filter und eine Lösung verwendet auch den 404er Trick. Allerdings werden dort die Permalinks über ein <a href='http://schnurpsel.de/iis-wordpress-permalinks-52/' class='more-link'>...&#187;</a>]]></description>
			<content:encoded><![CDATA[<p>Ja, es war mir schon klar, daß ich nicht der erste bin, der sich <a href='http://schnurpsel.de/exoten-51/' title='Exoten'>dieses Problems</a> annimmt. Bei wordpress.org selbst ist es im Codex unter dem Titel  &#8220;<a href="http://codex.wordpress.org/Using_Permalinks#Using_Permalinks_Without_mod_rewrite">Using Permalinks Without mod_rewrite</a>&#8221; bereits angeschnitten und es gibt auch drei Lösungen dafür. Zwei gehen den Weg über ein spezielles ISAPI-Filter und eine Lösung verwendet auch den 404er Trick. Allerdings werden dort die Permalinks über ein .asp-Programm umgesetzt. Das funktioniert auch für die Oldstyle-Permalinks (WordPress 1.X), als noch alle Rewrite-Regeln in der .htaccess-Datei standen. Meine Lösung funktioniert nur bei den Newstyle-Permalinks (WordPress 2.X),  bei denen nur noch die index.php angesprochen wird und die Auflösung der REQUEST_URI WP-intern erfolgt.</p>
<p>Generell kann ich die Lektüre der <a href="http://codex.wordpress.org/Using_Permalinks">Permalink-Codex-Seite</a> wärmstens empfehlen. Da bekommt man einen guten Überblick, was Permalinks sind, wie sie funktionieren und was man alles damit machen kann (und was nicht). Die Seite sollte auch mal auf Deutsch bei Wordpress-Deutschland aufgenommen werden, viele Fragen im WPD-Forum drehen sich um Permalinks und wären sicher mit dieser Seite einfach beantwortet.</p>
]]></content:encoded>
			<wfw:commentRss>http://schnurpsel.de/iis-wordpress-permalinks-52/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Exoten</title>
		<link>http://schnurpsel.de/exoten-51/</link>
		<comments>http://schnurpsel.de/exoten-51/#comments</comments>
		<pubDate>Wed, 27 Jun 2007 19:14:16 +0000</pubDate>
		<dc:creator>Schnurpselchen</dc:creator>
				<category><![CDATA[Konfiguration]]></category>
		<category><![CDATA[WP (Wordpress)]]></category>
		<category><![CDATA[IIS]]></category>
		<category><![CDATA[Permalink]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Rewrite]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://schnurpsel.de/exoten-51/</guid>
		<description><![CDATA[Es scheint doch tatsächlich Leute zu geben, die ernsthaft Wordpress auf einem IIS (was ist das?) laufen lassen :-)
Naja, es funktioniert wohl sogar. PHP mit MySQL bekommt man da auch ans laufen, also eigentlich kein großes Ding. Wenn da nicht die Sache mit den Permalinks wäre. Denn die erfordern nun mal ein funktionierendes mod_rewrite, was es aber meines Wissens nur für den Apache-Webserver gibt. <a href='http://schnurpsel.de/exoten-51/' class='more-link'>...&#187;</a>]]></description>
			<content:encoded><![CDATA[<p>Es scheint doch tatsächlich Leute zu geben, die ernsthaft <a href="http://forum.wordpress-deutschland.org/konfiguration/22436-permalinks-ohne-apache-anpassen.html">Wordpress auf einem IIS</a> (<a href="http://de.wikipedia.org/wiki/Microsoft_Internet_Information_Services">was ist das?</a>) laufen lassen :-)<br />
Naja, es funktioniert wohl sogar. PHP mit MySQL bekommt man da auch ans laufen, also eigentlich kein großes Ding. Wenn da nicht die Sache mit den Permalinks wäre. Denn die erfordern nun mal ein funktionierendes mod_rewrite, was es aber meines Wissens nur für den Apache-Webserver gibt. Zumindest kann der IIS von Hause aus nichts mit den entsprechenden Einträgen in der .htaccess anfangen. Und Wordpress ist auch so schlau, erkennt, daß es unter einem ISS läuft und bietet dann für die Permalinks gleich nur die Form mit dem vorangestellten /index.php an. Die sehen dann z.B. so aus:<br />
<code>/index.php/die-wordpress-import-schnittstelle-47/</code><br />
Gut, es funktioniert auch aber ist doch eher nur ein Notbehelf, eine Krücke. Schöner sieht es natürlich so aus:<br />
<code>/die-wordpress-import-schnittstelle-47/</code></p>
<p>Das muß aber nicht bei der index.php-Variante bleiben, denn das Problem ist ein ähnliches wie bei den Strato-PowerWeb-Paketen, bei denen zwar ein Apache mit mod_rewrite läuft, dieses aber vom Kunden nicht genutzt werden kann. Wenn man es doch versucht, wird das knallhart mit einem 500er Fehler bestraft. Wie man es bei Strato doch hinbekommt, habe ich <a href='http://schnurpsel.de/wordpress-bei-strato/wordpress-permalinks/' title='Wordpress Permalinks'>hier</a> beschrieben.</p>
<p>Für den IIS ist der Ansatz ganz ähnlich. Es wird ein benutzerdefiniertes Fehlerdokument für den Fehler &#8216;404 Not Found&#8217; &#8220;mißbraucht&#8221; und dieses ist einfach die &#8216;index.php&#8217; im Wordpress-Wurzelverzeichnis. Was anderes macht die RewriteEngine praktisch auch nicht, bis auf einen kleinen, aber wichtigen Unterschied. Beim Fehlerdokument wird der Status auf 404 gesetzt, so das der normale Nutzer im Browser zwar keinen Unterschiede sehen würde, denn er bekommt die Seite ganz normal angezeigt. Ein Suchmaschinen-Robot würde die Seite aber wie einen &#8220;Not Found&#8221;-Fehler behandeln und nicht weiter beachten. Deshalb ist das in der Beschreibung genannte Plugin erforderlich, welches den Status wieder ordentlich zurechtbiegt.</p>
<p>Etwas anders liegt die Sache beim IIS. Wenn eine benutzerdefinierte Fehlerseite als URL aufgerufen wird, wird vom Webserver der Status auf &#8216;200 OK&#8217; gesetzte und der Fehlerseite als Parameter der Fehlerstatus und die aufgerufene Seite mitgegeben. Hier ist dann die Fehlerseite dafür zuständig, den Status entsprechend korrekt zu setzen. Eine sehr schöne Vereinfachung gegenüber den Verrenkungen, die bei der Stratolösung nötig sind.<br />
Die einzig wirkliche Aufgabe besteht darin, aus dem übergebenen Parameter die eigenlich aufgerufene URL dem Wordpress als REQUEST_URI unterzujubeln, da daraus dann mit den Permalinkregeln die anzuzeigende Seite ermittlet wird.</p>
<p>Lange Rede, kurzer Sinn, genau das macht mein neues Plugin &#8220;<a href="http://putzlowitsch.de/123-iis-permalink/">123 IIS Permalink</a>&#8220;. Es ermöglich also auch unter IIS die schönen Permalinks ohne dem /index.php/&#8230; Vorspann :-)</p>
]]></content:encoded>
			<wfw:commentRss>http://schnurpsel.de/exoten-51/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Strato Permalink-Plugin ist der Renner</title>
		<link>http://schnurpsel.de/strato-permalink-plugin-ist-der-renner-31/</link>
		<comments>http://schnurpsel.de/strato-permalink-plugin-ist-der-renner-31/#comments</comments>
		<pubDate>Wed, 13 Jun 2007 12:57:30 +0000</pubDate>
		<dc:creator>Schnurpselchen</dc:creator>
				<category><![CDATA[WP (Wordpress)]]></category>
		<category><![CDATA[Permalink]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Strato]]></category>

		<guid isPermaLink="false">http://schnurpsel.de/strato-permalink-plugin-ist-der-renner-31.html</guid>
		<description><![CDATA[Damit hatte ich nicht gerechnet. Mein &#8216;123 No Rewrite Permalink&#8217;-Plugin (unbedigt die Anleitung lesen!) erfreut sich großer Beliebtheit. In den letzten drei Tagen wurde es bereits 4 mal runtergeladen. Na gut, davon waren zwei Downloads meine Tests, denn ich prüfe natürlich immer alles vorher, ob es auch funktioniert.
Könnte aber sein, das es tatsächlich bereits einen Nutzer gibt. Also falls jemand das erfolgreich bei seinem <a href='http://schnurpsel.de/strato-permalink-plugin-ist-der-renner-31/' class='more-link'>...&#187;</a>]]></description>
			<content:encoded><![CDATA[<p>Damit hatte ich nicht gerechnet. Mein &#8216;123 No Rewrite Permalink&#8217;-Plugin (unbedigt die <a href='http://schnurpsel.de/wordpress-bei-strato/wordpress-permalinks/' title='Wordpress Permalinks'>Anleitung</a> lesen!) erfreut sich großer Beliebtheit. In den letzten drei Tagen wurde es bereits 4 mal runtergeladen. Na gut, davon waren zwei Downloads meine Tests, denn ich prüfe natürlich immer alles vorher, ob es auch funktioniert.</p>
<p>Könnte aber sein, das es tatsächlich bereits einen Nutzer gibt. Also falls jemand das erfolgreich bei seinem Strato-Blog im Einsatz hat, würde ich mich über eine kurze Rückmeldung mit Angabe der WP-Version, z.B. hier in den Kommentaren freuen. Oder ich schalte die Kommentare direkt bei der Beschreibungsseite frei. Ja, so werd ichs machen.</p>
<p>Natürlich sind auch Kritik, Problembeschreibungen oder Fragen jederzeit willkommen. Ob ich daruf eingegehen kann, weiß ich allerdings nicht ;-)</p>
]]></content:encoded>
			<wfw:commentRss>http://schnurpsel.de/strato-permalink-plugin-ist-der-renner-31/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Der Wald und die vielen Bäume</title>
		<link>http://schnurpsel.de/der-wald-und-die-vielen-baume-30/</link>
		<comments>http://schnurpsel.de/der-wald-und-die-vielen-baume-30/#comments</comments>
		<pubDate>Mon, 11 Jun 2007 08:17:10 +0000</pubDate>
		<dc:creator>Schnurpselchen</dc:creator>
				<category><![CDATA[WP (Wordpress)]]></category>
		<category><![CDATA[ErrorDocument]]></category>
		<category><![CDATA[Permalink]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://schnurpsel.de/der-wald-und-die-vielen-baume-30.html</guid>
		<description><![CDATA[Manchmal sieht man den Wald vor lauter Bäumen nicht, sagt ein altes Sprichwort.
Da habe ich mich gestern hier abgemüht, den komplizierten Sachverhalt der Konfiguration eines benutzerdefinierten Fehlerdokumentes darzulegen und extra noch darauf hingewiesen, das mein Plugin des Schreiben der für Strato tödlichen mod_rewrite-Regeln unterbindet, nämlich einfach dadurch, daß ich eine Leerzeile schreiben lasse. Und heute fällt es mir wie Schuppen aus den Haaren, daß <a href='http://schnurpsel.de/der-wald-und-die-vielen-baume-30/' class='more-link'>...&#187;</a>]]></description>
			<content:encoded><![CDATA[<p>Manchmal sieht man den Wald vor lauter Bäumen nicht, sagt ein altes Sprichwort.</p>
<p>Da habe ich mich gestern <a href='http://schnurpsel.de/wordpress-bei-strato/wordpress-permalinks-010/' title='Wordpress Permalinks 0.10'>hier</a> abgemüht, den komplizierten Sachverhalt der Konfiguration eines benutzerdefinierten Fehlerdokumentes darzulegen und extra noch darauf hingewiesen, das mein Plugin des Schreiben der für Strato tödlichen mod_rewrite-Regeln unterbindet, nämlich einfach dadurch, daß ich eine Leerzeile schreiben lasse. Und heute fällt es mir wie Schuppen aus den Haaren, daß ich natürlich genau an der Stelle nur einfach mein &#8220;ErrorDocument 404&#8243; einbauen muß. Also vergeßt den ganzen Zauber mit rumgefummle in der .htaccess oder dem Website-Configurator. Es geht viel einfacher so wie hier beschrieben:<br />
<a href='http://schnurpsel.de/wordpress-bei-strato/wordpress-permalinks/' title='Wordpress Permalinks'>Wordpress Permalinks</a></p>
<p>Praktisch eine Plug&#038;Play-Lösung, Plugin runterladen, aufspielen, aktivieren und fertig.</p>
<p>Man sollt aber tunlichst darauf achten, daß das Plugin immer aktive ist, besonders dann, wenn etwas an den Permalinkeinstellungen verändert wird. Das schreiben der WP-Rewrite-Rules passiert aber auch an anderen Stellen, so z.B einfach schon, wenn die Optionenseite &#8216;Permalinks&#8217; aufgerufen wird, oder auch wenn neue statische Seiten hinzugefügt oder diese verändert werden.</p>
]]></content:encoded>
			<wfw:commentRss>http://schnurpsel.de/der-wald-und-die-vielen-baume-30/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Wordpress Permalinks bei Strato</title>
		<link>http://schnurpsel.de/wordpress-permalinks-bei-strato-27/</link>
		<comments>http://schnurpsel.de/wordpress-permalinks-bei-strato-27/#comments</comments>
		<pubDate>Sun, 10 Jun 2007 18:54:25 +0000</pubDate>
		<dc:creator>Schnurpselchen</dc:creator>
				<category><![CDATA[WP (Wordpress)]]></category>
		<category><![CDATA[Permalink]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Strato]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://schnurpsel.de/wordpress-permalinks-bei-strato-27.html</guid>
		<description><![CDATA[So, ich hab das Plugin jetzt fertig gestellt und auch eine Beschreibung dazu geschrieben. Einfach rechts unter Seiten das gewünschte Thema auswählen. Wenn man sich nur für die Permalink-Geschichte interessiert, dann gleich zu Wordpress Permalinks wechseln, oder wenn man Wordpress ganz neu installieren will, kann man auch bei Vorbereitung Datenbank starten. Die Übersicht gibt es hier: Wordpress bei Strato
Achso, das Wetter war heute ähnlich <a href='http://schnurpsel.de/wordpress-permalinks-bei-strato-27/' class='more-link'>...&#187;</a>]]></description>
			<content:encoded><![CDATA[<p>So, ich hab das Plugin jetzt fertig gestellt und auch eine Beschreibung dazu geschrieben. Einfach rechts unter <strong>Seiten</strong> das gewünschte Thema auswählen. Wenn man sich nur für die Permalink-Geschichte interessiert, dann gleich zu <a href='http://schnurpsel.de/wordpress-bei-strato/wordpress-permalinks/' title='Wordpress Permalinks'>Wordpress Permalinks</a> wechseln, oder wenn man Wordpress ganz neu installieren will, kann man auch bei <a href='http://schnurpsel.de/wordpress-bei-strato/vorbereitung-datenbank/' title='Vorbereitung Datenbank'>Vorbereitung Datenbank</a> starten. Die Übersicht gibt es hier: <a href='http://schnurpsel.de/wordpress-bei-strato/' title='Wordpress bei Strato'>Wordpress bei Strato</a></p>
<p>Achso, das Wetter war heute ähnlich wie gestern. Sonne, Sonne, Sonne und Hitze.</p>
<p>Viel Spaß und Erfolg :-)</p>
]]></content:encoded>
			<wfw:commentRss>http://schnurpsel.de/wordpress-permalinks-bei-strato-27/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hallo Welt!</title>
		<link>http://schnurpsel.de/hallo-welt-1/</link>
		<comments>http://schnurpsel.de/hallo-welt-1/#comments</comments>
		<pubDate>Wed, 06 Jun 2007 10:02:14 +0000</pubDate>
		<dc:creator>Schnurpselchen</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Blog]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Willkommen zur deutschen Version von WordPress. Dies ist der erste Artikel. Du kannst ihn bearbeiten oder löschen. Um Spam zu vermeiden, geh doch gleich mal in den Pluginbereich und aktivier die entsprechenden Plugins. So, und nun genug geschwafelt &#8211; jetzt nichts wie ran ans Bloggen!
]]></description>
			<content:encoded><![CDATA[<p>Willkommen zur deutschen Version von WordPress. Dies ist der erste Artikel. Du kannst ihn bearbeiten oder löschen. Um Spam zu vermeiden, geh doch gleich mal in den Pluginbereich und aktivier die entsprechenden Plugins. So, und nun genug geschwafelt &#8211; jetzt nichts wie ran ans Bloggen!</p>
]]></content:encoded>
			<wfw:commentRss>http://schnurpsel.de/hallo-welt-1/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
