<?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>Toms Dimension &#187; wordpress</title>
	<atom:link href="http://www.tomsdimension.de/tag/wordpress/feed" rel="self" type="application/rss+xml" />
	<link>http://www.tomsdimension.de</link>
	<description>Mein Leben, wen&#039;s interessiert ...</description>
	<lastBuildDate>Fri, 20 Jan 2012 17:56:25 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>gziped</title>
		<link>http://www.tomsdimension.de/programmiert/gziped</link>
		<comments>http://www.tomsdimension.de/programmiert/gziped#comments</comments>
		<pubDate>Sun, 28 Sep 2008 11:26:30 +0000</pubDate>
		<dc:creator>Tom</dc:creator>
				<category><![CDATA[geblogt]]></category>
		<category><![CDATA[programmiert]]></category>
		<category><![CDATA[gzip]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.tomsdimension.de/?p=232</guid>
		<description><![CDATA[Für den Firefox gibt es ja das tolle Addon Web-Developer mit sehr hilfreichen Funktionen, wenn man Webseiten erstellt. Unter anderem kann man sich auch die Dateigröße anzeigen lassen. Bei meiner Startseite sieht das momentan so aus. Normalerweise müssen also 489 KB runtergeladen werden, zumindest wenn der Browsercache keine entsprechenden Daten enthält. Nachdem ich nun aber...]]></description>
			<content:encoded><![CDATA[<p>Für den Firefox gibt es ja das tolle Addon <a class="extern" href="http://www.erweiterungen.de/detail/Web_Developer/">Web-Developer</a> mit sehr hilfreichen Funktionen, wenn man Webseiten erstellt. Unter anderem kann man sich auch die Dateigröße anzeigen lassen. Bei meiner Startseite sieht das momentan so aus.</p>
<p><img class="alignnone size-full wp-image-233" title="gziped" src="http://www.tomsdimension.de/wp/wp-content/uploads/2008/09/gziped.gif" alt="" width="352" height="150" /></p>
<p><span id="more-232"></span></p>
<p>Normalerweise müssen also 489 KB runtergeladen werden, zumindest wenn der Browsercache keine entsprechenden Daten enthält. Nachdem ich nun aber die Komprimierung aktiviert habe, sind es nur noch 280 KB. Dies wird dadurch erreicht, dass die Textdateien auf rund 25% verkleinert werden. Die Grafiken lasse ich außen vor, denn die sollten eh schon komprimiert auf dem Server liegen, was man viel besser mit einem Grafikprogramm schafft. Da ist höchstens noch was an der Anzahl zu tun. <img src='http://www.tomsdimension.de/wp/wp-includes/images/smilies/icon_mrgreen.gif' alt=':mrgreen:' class='wp-smiley' /> </p>
<p>Eigentlich kann der Apache-Webserver selbständig komprimieren. Was aber, wenn das beim eigenen Webspace-Anbieter, wie bei meinem, nicht implementiert ist?  <img src='http://www.tomsdimension.de/wp/wp-includes/images/smilies/icon_traurig.gif' alt=':traurig:' class='wp-smiley' />  Glück im Unglück: PHP kann das mittels "zlib.output_compression" auch. Allerdings werden so nur PHP-Dateien komprimiert. Im obigen Bild ist das nur der erste Punkt. Besser als nichts, aber lange nicht genug. Stylesheets und Javascripte müssen auch noch schrumpfen.</p>
<p>Das habe ich über einen kleinen Umweg und einiger Recherche im Internet geschafft. Alle Dateien mit der Endung .css und .js werden per PHP komprimiert und erst dann an den Browser geschickt. Mit Erfolg, weitere 170 KB eingespart. Dazu wird die .htaccess um</p>
<pre><pre><code>&amp;lt;IfModule mod_rewrite.c&amp;gt;
  RewriteEngine On
  RewriteCond %{REQUEST_URI} (\.css|\.js)$
  RewriteRule ^(.+)$ /script/gzipit.php?file=%{REQUEST_URI}
&amp;lt;/IfModule&amp;gt;</code></pre></pre>
<p><br class="spacer_" /></p>
<p>erweitert. Die .css- und .js-Dateien werden also an "/script/gzipit.php" übergeben. Meine gzipit.php kannst du hier sehen und in das entsprechende Verzeichnis (z.B. script) packen. Das ganze funktioniert leider nur, wenn "rewrite" im Apachen erlaubt ist, was wiederum vom Anbieter abhängt.</p>
<pre><pre><code>?php
if ( empty($_GET[&#039;file&#039;]) )
{
    header(&quot;Content-Type: text/html&quot;);
    echo &#039;ERROR: NO FILE!&#039;;
}
else
{
    $start = microtime();

    // get file type
    if ( strpos($_GET[&#039;file&#039;], &#039;.css&#039;) !== false )
        $type = &#039;text/css&#039;;
    else if ( strpos($_GET[&#039;file&#039;], &#039;.js&#039;) !== false )
        $type = &#039;text/javascript&#039;;
    else
        $type = &#039;text/html&#039;;

    // read file
    $filename = &quot;{$_SERVER[&#039;DOCUMENT_ROOT&#039;]}{$_GET[&#039;file&#039;]}&quot;;
    $modified = filemtime(&quot;$filename&quot;);
    $file = fopen($filename, &#039;r&#039;);
    $content = fread($file, filesize($filename));
    fclose($file);

    // only one compression
    if ( !ini_get(&#039;zlib.output_compression&#039;) )
        ob_start(&quot;ob_gzhandler&quot;);

    // set header
    header(&quot;Last-Modified: &quot;.gmdate(&quot;D, d M Y H:i:s&quot;,$modified).&quot; GMT&quot;);
    header(&quot;ETag: &quot;.md5($modified));
    header(&quot;Cache-Control: public&quot;);
    header(&quot;Content-Type: $type&quot;);

    if (!isset($_SERVER[&#039;HTTP_IF_MODIFIED_SINCE&#039;]) &amp;amp;&amp;amp; is_callable(&#039;apache_request_headers&#039;)) {
        $header = apache_request_headers();
        if (isset($header[&#039;If-Modified-Since&#039;])) {
            $_SERVER[&#039;HTTP_IF_MODIFIED_SINCE&#039;] = $header[&#039;If-Modified-Since&#039;];
        }
    }

    if (isset($_SERVER[&#039;HTTP_IF_MODIFIED_SINCE&#039;]) &amp;amp;&amp;amp; $modified &amp;lt;= strtotime($_SERVER[&#039;HTTP_IF_MODIFIED_SINCE&#039;])) {
        header(&quot;{$_SERVER[&#039;SERVER_PROTOCOL&#039;]} 304 Not Modified&quot;);
    }

    $time = (microtime() - $start) * 1000;

    // output
    echo &#039;/* gzipit: &#039;.$time.&#039; ms - file last modified: &#039;.gmdate(&quot;D, d M Y H:i:s&quot;,$modified).&quot; */\n\n&quot;
   .$content;
}
?&amp;gt;</code></pre></pre>
<p><br class="spacer_" /></p>
<p>Die Benutzung erfolgt natürlich auf eigene Gefahr. Wenn die Seite plötzlich sehr leer aussieht, ist wahrscheinlich der Pfad in der .htaccess falsch.<br />
 Bei WordPress ist es auch wichtig, dass die obigen Änderungen <span style="text-decoration: underline;">nach</span> den WordPress-eigenen Zeilen in der .htaccess stehen, falls dort welche existieren.</p>
 <p style="border-top: 1px #ccc solid; margin-top: 20px; padding-top:10px; font-size: 10px;">
			Hier kannst du den <a href="http://www.tomsdimension.de/programmiert/gziped">Artikel im Original</a> lesen und
			<a href="http://www.tomsdimension.de/programmiert/gziped#respond">einen Kommentar schreiben</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://www.tomsdimension.de/programmiert/gziped/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress 2.5</title>
		<link>http://www.tomsdimension.de/geblogt/wordpress-25</link>
		<comments>http://www.tomsdimension.de/geblogt/wordpress-25#comments</comments>
		<pubDate>Mon, 07 Apr 2008 19:04:12 +0000</pubDate>
		<dc:creator>Tom</dc:creator>
				<category><![CDATA[geblogt]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.tomsdimension.de/wp/?p=176</guid>
		<description><![CDATA[OK, ich hab mich heut abend mal getraut mein Blog auf die WordPress Version 2.5 zu aktualisieren. Natürlich nicht ohne (fast) alles vorher offline zu testen. Genau diese "(fast)" ist das Problem. Wieso denkt man nie an alles? An sich ist das Update kein Problem und verlief wie geplant ohne Besonderheiten. Aber ... Natürlich gibts...]]></description>
			<content:encoded><![CDATA[<p>OK, ich hab mich heut abend mal getraut mein Blog auf die WordPress Version 2.5 zu aktualisieren. Natürlich nicht ohne (fast) alles vorher offline zu testen.  Genau diese "(fast)" ist das Problem. Wieso denkt man nie an alles?  <img src='http://www.tomsdimension.de/wp/wp-includes/images/smilies/icon_gruebel.gif' alt=':gruebel:' class='wp-smiley' />   An sich ist das Update kein Problem und verlief wie geplant ohne Besonderheiten. Aber ...<br />
Natürlich gibts auch "aber", und nicht nur eins. Diese liegen aber an Plugins, die momentan noch nicht so wollen wie ich es gern hätte.</p>
<ul>
<li>Die Flash-Filme laufen nicht. Da sind sie noch, nur nicht so ganz.</li>
<li>TinyMCE Advanced tut es irgendwie sporadisch, aber das spielt nur hinter den Kulissen eine Rolle</li>
<li>wp-grins, also Smilies per Buttonleiste hinzufügen, geht nur bei Kommentaren, aber nicht wenn man nen Artikel schreibt. Sicher wieder nur ne ganz kleine Einstellung, irgendwo ...</li>
</ul>
<p>Also falls momentan die eine oder andere Seite etwas fehlerhaft ist, nicht meckern sondern warten.  <img src='http://www.tomsdimension.de/wp/wp-includes/images/smilies/icon_tongue.gif' alt=':zunge:' class='wp-smiley' /> </p>
<p><span style="text-decoration: underline;"><em>update 08.04. 09:00:</em></span></p>
<p>Die Flash-Video gehen wieder. Komischerweise muss nun in den Plugin-Einstellungen bei "SWF Location" der volle Pfad eingetragen werden, was bei der alten Version nicht so war. Aber egal, probieren geht über studieren.</p>
 <p style="border-top: 1px #ccc solid; margin-top: 20px; padding-top:10px; font-size: 10px;">
			Hier kannst du den <a href="http://www.tomsdimension.de/geblogt/wordpress-25">Artikel im Original</a> lesen und
			<a href="http://www.tomsdimension.de/geblogt/wordpress-25#respond">einen Kommentar schreiben</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://www.tomsdimension.de/geblogt/wordpress-25/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>mehr Smilies bitte</title>
		<link>http://www.tomsdimension.de/geblogt/mehr-smilies-bitte</link>
		<comments>http://www.tomsdimension.de/geblogt/mehr-smilies-bitte#comments</comments>
		<pubDate>Sun, 04 Nov 2007 19:42:43 +0000</pubDate>
		<dc:creator>Tom</dc:creator>
				<category><![CDATA[geblogt]]></category>
		<category><![CDATA[smilies]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.tomsdimension.de/wp/?p=116</guid>
		<description><![CDATA[In WordPress sind bereits einige Smilies enthalten, die bei Bedarf anstatt der bekannten Textstellen zB. ":-)" eingesetzt werden. Wer sich nicht auf das Eintippen verlassen will, kann mit dem Plugin wp-grins beim Artikelschreiben und bei den Kommentaren eine Smilie-Leiste einblenden. Geht ganz von allein. Aber was, wenn man mehr als die Standard-Smilies haben möchte? Geht...]]></description>
			<content:encoded><![CDATA[<p>In WordPress sind bereits einige Smilies enthalten, die bei Bedarf anstatt der bekannten Textstellen zB. ":-)" eingesetzt werden. Wer sich nicht auf das Eintippen verlassen will, kann mit dem Plugin <a class="extern" href="http://alexking.org/projects/wordpress">wp-grins</a> beim Artikelschreiben und bei den Kommentaren eine Smilie-Leiste einblenden. Geht ganz von allein.<br />
 Aber was, wenn man mehr als die Standard-Smilies haben möchte? Geht auch, wenn auch mit etwas Handarbeit. Zuerst müssen die zusätzlichen Bildchen zu den vorhandenen nach <code>wp-includes\images\smilies</code> kopiert werden. Dann müssen wir noch die <code>wp-config.php</code> aus dem Hauptverzeichnis des Blogs etwas ändern. Am Ende der Datei steht schon:</p>
<pre><code>require_once(ABSPATH.&#039;wp-settings.php&#039;);</code></pre>
<p>Davor muss die Variable <code>$wpsmiliestrans</code> neu erstellt werden. Das könnte so aussehen:</p>
<pre><pre><code>/* eigene Smilies */
$wpsmiliestrans = array(
    &#039;:))&#039; =&amp;gt; &#039;icon_grin.gif&#039;,
    &#039;:thumbup:&#039; =&amp;gt; &#039;icon_thumbup.png&#039;,
    ...
    &#039;:traurig:&#039; =&amp;gt; &#039;icon_traurig.gif&#039;,
    &#039;:base:&#039; =&amp;gt; &#039;icon_base.gif&#039;);

require_once(ABSPATH.&#039;wp-settings.php&#039;);
</code></pre></pre>
<p><br class="spacer_" /></p>
<p>Vorn als "Key" jeweils die zu ersetzenden Textfragmente, im "Value" der Dateiname. Schon haben wir unsere eigenen Smilies. Ein Beispiel gibts unten beim Kommentar.</p>
 <p style="border-top: 1px #ccc solid; margin-top: 20px; padding-top:10px; font-size: 10px;">
			Hier kannst du den <a href="http://www.tomsdimension.de/geblogt/mehr-smilies-bitte">Artikel im Original</a> lesen und
			<a href="http://www.tomsdimension.de/geblogt/mehr-smilies-bitte#respond">einen Kommentar schreiben</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://www.tomsdimension.de/geblogt/mehr-smilies-bitte/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Blog Update</title>
		<link>http://www.tomsdimension.de/geblogt/blog-update</link>
		<comments>http://www.tomsdimension.de/geblogt/blog-update#comments</comments>
		<pubDate>Sat, 03 Nov 2007 17:57:32 +0000</pubDate>
		<dc:creator>Tom</dc:creator>
				<category><![CDATA[geblogt]]></category>
		<category><![CDATA[lifetype]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.tomsdimension.de/wp/?p=115</guid>
		<description><![CDATA[Ich baue grad an meinem neuen Blog. Wenn du das hier liest, ist es ja eigentlich schon fertig. Diesmal mit WordPress, was ich nach einigen Basteleien und Vergleichen noch etwas besser finde als LifeType. Zwar kann man mit WordPress nur jeweils ein Blog einrichten, aber das ist ja für normale Anwender auch ausreichend. Dafür ist...]]></description>
			<content:encoded><![CDATA[<p>Ich baue grad an meinem neuen Blog. Wenn du das hier liest, ist es ja eigentlich schon fertig.  <img src='http://www.tomsdimension.de/wp/wp-includes/images/smilies/icon_gruebel.gif' alt=':gruebel:' class='wp-smiley' />  Diesmal mit <a href="http://wordpress-deutschland.org/" class="extern">WordPress</a>, was ich nach einigen Basteleien und Vergleichen noch etwas besser finde als <a href="http://www.lifetype.de" class="extern">LifeType</a>. Zwar kann man mit WordPress nur jeweils ein Blog einrichten, aber das ist ja für normale Anwender auch ausreichend. Dafür ist die Bedienung irgendwie intuitiver. Naja, ist ja auch Geschmacksache. Die Templates sind direkt in PHP geschrieben, was mehr Freiheiten bringt als Smarty-Templates. Andererseits ist es auch eine Frage der Sicherheit. Aber ich weiß im allgemeinen was ich tue. <img src='http://www.tomsdimension.de/wp/wp-includes/images/smilies/icon_hehe.gif' alt=':hehe:' class='wp-smiley' /><br />
Das Template basiert auf dem <a href="http://www.ndesign-studio.com/resources/wp-themes/" class="extern">ITheme.</a> Natürlich habe ich einiges geändert. Eine gewisse persönliche Note muss schon her. Nichts ist schlimmer als ein Layout, was auch alle anderen haben. Und wenn schon mein Windows-Desktop wie ein Mac aussieht, dann kann es auch das Blog. <img src='http://www.tomsdimension.de/wp/wp-includes/images/smilies/icon_tongue.gif' alt=':zunge:' class='wp-smiley' /> </p>
<p>Und wenn ich schon alles neu mache, dass gelobe ich auch Besserung in der Häufigkeit der Einträge. Ein Besuch soll sich ja auch lohnen.</p>
 <p style="border-top: 1px #ccc solid; margin-top: 20px; padding-top:10px; font-size: 10px;">
			Hier kannst du den <a href="http://www.tomsdimension.de/geblogt/blog-update">Artikel im Original</a> lesen und
			<a href="http://www.tomsdimension.de/geblogt/blog-update#respond">einen Kommentar schreiben</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://www.tomsdimension.de/geblogt/blog-update/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

