<?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/"
	
	xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>bueltge.de [by:ltge.de]</title>
	<atom:link href="http://bueltge.de/feed/" rel="self" type="application/rss+xml" />
	<link>http://bueltge.de</link>
	<description>Frank Bültge schreibt auf bueltge.de zu den Themen Webentwicklung &#38; design, WordPress, Literatur und andere Themen bezüglich Internet und Development</description>
	<lastBuildDate>Fri, 17 May 2013 15:29:16 +0000</lastBuildDate>
	<language>de-DE</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Post Format UI deaktivieren</title>
		<link>http://bueltge.de/post-format-ui-deaktivieren/2587/</link>
		<comments>http://bueltge.de/post-format-ui-deaktivieren/2587/#comments</comments>
		<pubDate>Fri, 17 May 2013 15:23:17 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Tipps]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[WP]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=2587</guid>
		<description><![CDATA[WordPress Version 3.6 kommt mit neuer Oberfläche für die Post Formats, präsenter ist das Schlagwort. Die Post Format UI ist eine wunderbare Möglichkeit mit wenig Aufwand Artikel besser uns sichtbar zu deklarieren, für den Leser verschieden aufzubereiten. Trotzdem ist sie nicht immer notwendig. Im Standard kann die UI in den jeweiligen Optionen des Users deaktiviert <a class="moretag" href="http://bueltge.de/post-format-ui-deaktivieren/2587/">&#8594; Weiterlesen</a>]]></description>
				<content:encoded><![CDATA[<p>WordPress Version 3.6 kommt mit neuer Oberfläche für die Post Formats, präsenter ist das Schlagwort. Die Post Format UI ist eine wunderbare Möglichkeit mit wenig Aufwand Artikel besser uns sichtbar zu deklarieren, für den Leser verschieden aufzubereiten. Trotzdem ist sie nicht immer notwendig. Im Standard kann die UI in den jeweiligen Optionen des Users deaktiviert werden, siehe Screenshot.</p>
<p><a href="http://bueltge.de/wp-content/images/post-format-ui.png"><img src="http://bueltge.de/wp-content/images/post-format-ui-640x238.png" alt="post-format-ui" class="alignnone size-medium wp-image-2588" /></a></p>
<p>Alternativ kann der Filter Hook <code>enable_post_format_ui</code> genutzt werden. Mittels dieses Hooks kann die UI global in der Installation deaktiviet werden und kein User hat die Möglichkeit die Post Formats zu nutzen.<span id="more-2587"></span> Folgende Zeilen in einer php-Datei als Plugin abgelegt und aktiviert sind daher ausreichend.</p>
<pre><code class="php">&lt;?php
/**
 * Plugin Name: Disable Post Format UI
 */

! defined( 'ABSPATH' ) and exit;

add_filter( 'enable_post_format_ui', '__return_false' );

</code></pre>
<hr />
<p><img src="http://bueltge.de/favicon.ico" alt="bueltge.de Favicon"/> <small>&copy; <a href="http://bueltge.de/">Frank B&uuml;ltge</a>, All rights reserved / Alle Rechte vorbehalten. (ID: 6e8b33de4342c4f2ca76b245199aeee8)</small></p>
<p>Danke für das Abonnieren meines <strong><a href="http://bueltge.de/feed/">Feed</a></strong>! Inhalt gefällt? <a href="http://bueltge.de/wunschliste/" title="Wunschliste">Danke sagen</a> &middot; <a href="http://bueltge.de/post-format-ui-deaktivieren/2587/#respond" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/post-format-ui-deaktivieren/2587/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/wp-content/images/post-format-ui-470x392.png" />
		<media:content url="http://bueltge.de/wp-content/images/post-format-ui-980x392.png" medium="image">
			<media:title type="html">post-format-ui</media:title>
			<media:thumbnail url="http://bueltge.de/wp-content/images/post-format-ui-470x392.png" />
		</media:content>
		<media:content url="http://bueltge.de/favicon.ico" medium="image">
			<media:title type="html">bueltge.de Favicon</media:title>
		</media:content>
	</item>
		<item>
		<title>Chrome Logger &#8211; ChromePHP</title>
		<link>http://bueltge.de/chrome-logger-chromephp/2582/</link>
		<comments>http://bueltge.de/chrome-logger-chromephp/2582/#comments</comments>
		<pubDate>Fri, 19 Apr 2013 12:31:24 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Tipps]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Debugging]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[WP]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=2582</guid>
		<description><![CDATA[Der Webinspector in Chromium ist mir ans Herz gewachsen, Firebug ist für mich nur notwendig, wenn ich im Firefox validieren muss. In diesem Zusammenhang habe ich auch das Debuggen im PHP Umfeld dort abgebildet. Bin ich nicht komplett in der IDE und man braucht diverse Daten im Debuggmodus, dann kann man dies über die Wege <a class="moretag" href="http://bueltge.de/chrome-logger-chromephp/2582/">&#8594; Weiterlesen</a>]]></description>
				<content:encoded><![CDATA[<p>Der Webinspector in Chromium ist mir ans Herz gewachsen, Firebug ist für mich nur notwendig, wenn ich im Firefox validieren muss. In diesem Zusammenhang habe ich auch das Debuggen im PHP Umfeld dort abgebildet. Bin ich nicht komplett in der IDE und man braucht diverse Daten im Debuggmodus, dann kann man dies über die Wege <code>var_dump()</code> in der Applikation ausgeben oder alternativ in Chromium mit Hilfe der Erweiterung <a href="http://craig.is/writing/chrome-logger">Chrome Logger</a> und der Library <a href="https://github.com/ccampbell/chromephp">ChromePHP</a> tun. Somit wird die Oberfläche nicht durch die Debug-Ausgaben zerstört und kann in Systemen bei Kunden sauber in die Konsole des Webinspector überführt werden. Dazu einige Hinweise.<br />
<span id="more-2582"></span><br />
<a href="http://bueltge.de/wp-content/images/chromephp-wp.png"><img src="http://bueltge.de/wp-content/images/chromephp-wp-640x620.png" alt="chromephp-wp" class="aligncenter size-medium wp-image-2583" /></a></p>
<p>Um die Möglichkeit in der PHP Welt in die Konsole des Webinspector zu debuggen, ist die Chrome Erweiterung <a href="http://craig.is/writing/chrome-logger" title="Chrome Logger is a Google Chrome extension for debugging server side applications in the Chrome console.">Chrome Logger</a> notwendig. Parallel muss eine Library <a href="https://github.com/ccampbell/chromephp" title="class for logging PHP variables to Google Chrome console">ChromePHP</a> eingebunden werden. Im einfachsten Fall ist dies via include im jeweiligen Projekt schnell erstellt. Alternativ kann, sinnvoll in Entwicklungsumgebunden, der Include in der <code>php.ini</code> abgelegt werden; via <a href="http://www.php.net/manual/en/ini.core.php#ini.auto-prepend-file" title="Specifies the name of a file that is automatically parsed before the main file. The file is included as if it was called with the require function, so include_path is used."><code>auto_prepend_file</code></a>. Dies könnte beispielsweise wie folgt hinterlegt sein, je nachdem wo die Library abgelegt ist.</p>
<pre><code class="php">
auto_prepend_file = /var/www/ChromePhp.php
</code></pre>
<p>Im WordPress Umfeld, was meine wichtigste Applikation in der Entwicklung ist, kann man es ebenfalls via Plugin rein holen. Dazu gibt es einige Lösungen bei Github. Ich für meinen Teil nutze das Plugin <a href="https://github.com/bueltge/Debug-Objects" title="WordPress Plugin for debugging and learning with and at system">Debug Objects</a>, was die Library inkludiert. Dies versetzt mich auch einfach in die Lage, beim Kunden auf der Plattform in die Konsole zu debuggen.</p>
<p>Außerdem der Hinweis, der Chrome Logger ist ebenso im Umfeld von node.js, Ruby und Pythen nutzbar.<br />
<hr />
<p><img src="http://bueltge.de/favicon.ico" alt="bueltge.de Favicon"/> <small>&copy; <a href="http://bueltge.de/">Frank B&uuml;ltge</a>, All rights reserved / Alle Rechte vorbehalten. (ID: 6e8b33de4342c4f2ca76b245199aeee8)</small></p>
<p>Danke für das Abonnieren meines <strong><a href="http://bueltge.de/feed/">Feed</a></strong>! Inhalt gefällt? <a href="http://bueltge.de/wunschliste/" title="Wunschliste">Danke sagen</a> &middot; <a href="http://bueltge.de/chrome-logger-chromephp/2582/#respond" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/chrome-logger-chromephp/2582/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/wp-content/images/chromephp-wp-470x470.png" />
		<media:content url="http://bueltge.de/wp-content/images/chromephp-wp-769x450.png" medium="image">
			<media:title type="html">chromephp-wp</media:title>
			<media:thumbnail url="http://bueltge.de/wp-content/images/chromephp-wp-470x470.png" />
		</media:content>
		<media:content url="http://bueltge.de/favicon.ico" medium="image">
			<media:title type="html">bueltge.de Favicon</media:title>
		</media:content>
	</item>
		<item>
		<title>Überraschung aus dem Norden</title>
		<link>http://bueltge.de/ueberraschung-aus-dem-norden/2579/</link>
		<comments>http://bueltge.de/ueberraschung-aus-dem-norden/2579/#comments</comments>
		<pubDate>Sun, 14 Apr 2013 19:21:58 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Bike]]></category>
		<category><![CDATA[Linktipp]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=2579</guid>
		<description><![CDATA[Im Norden soll ja das Wetter härter sein, nur was für echte Männer. Markus gehört dazu, dem hat es so gut gefallen, dass er gleich dort blieb und nun sogar 2 Wikinger groß zieht. Trotzdem findet er Zeit mir eine Freude zu machen und sendet zum Frühlingsanfang ein JerseyBin. Damit ein Grund mehr auf das <a class="moretag" href="http://bueltge.de/ueberraschung-aus-dem-norden/2579/">&#8594; Weiterlesen</a>]]></description>
				<content:encoded><![CDATA[<p>Im Norden soll ja das Wetter härter sein, nur was für echte Männer. Markus gehört dazu, dem hat es so gut gefallen, dass er gleich dort blieb und nun sogar 2 Wikinger groß zieht. Trotzdem findet er Zeit mir eine Freude zu machen und sendet zum Frühlingsanfang ein <a href="http://54elf.de/jerseybin-perfekte-schutzhulle-fur-biker-und-alle-anderen-outdoorbegeisterten/" title="JerseyBin: Perfekte Schutzhülle für Biker und alle anderen Outdoorbegeisterten">JerseyBin</a>. Damit ein Grund mehr auf das Bike oder in die Laufschuhe zu steigen und meine Tüte um das Smartphone links liegen zu lassen.</p>
<p><a href="http://bueltge.de/wp-content/images/img_20130414_211505.jpg"><img src="http://bueltge.de/wp-content/images/img_20130414_211505-640x480.jpg" alt="IMG_20130414_211505" class="aligncenter size-medium wp-image-2580" /></a></p>
<p>Eine tolle Idee, nützlicher kleiner Helfer der mich nun noch öfter an den Freund im Norden erinnert und, dass ich ihn viel zu selten anrufe - wie viele andere Freunde auch. Vielen Dank <a href="http://54elf.de/" title="54ELF.DE bike &#038; run">Markus</a> - die Überraschung ist gelungen!<br />
<hr />
<p><img src="http://bueltge.de/favicon.ico" alt="bueltge.de Favicon"/> <small>&copy; <a href="http://bueltge.de/">Frank B&uuml;ltge</a>, All rights reserved / Alle Rechte vorbehalten. (ID: 6e8b33de4342c4f2ca76b245199aeee8)</small></p>
<p>Danke für das Abonnieren meines <strong><a href="http://bueltge.de/feed/">Feed</a></strong>! Inhalt gefällt? <a href="http://bueltge.de/wunschliste/" title="Wunschliste">Danke sagen</a> &middot; <a href="http://bueltge.de/ueberraschung-aus-dem-norden/2579/#respond" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/ueberraschung-aus-dem-norden/2579/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/wp-content/images/img_20130414_211505-470x470.jpg" />
		<media:content url="http://bueltge.de/wp-content/images/img_20130414_211505-980x450.jpg" medium="image">
			<media:title type="html">IMG_20130414_211505</media:title>
			<media:thumbnail url="http://bueltge.de/wp-content/images/img_20130414_211505-470x470.jpg" />
		</media:content>
		<media:content url="http://bueltge.de/favicon.ico" medium="image">
			<media:title type="html">bueltge.de Favicon</media:title>
		</media:content>
	</item>
		<item>
		<title>Gist via oEmbed in WordPress einbinden</title>
		<link>http://bueltge.de/gist-via-oembed-in-wordpress-einbinden/1425/</link>
		<comments>http://bueltge.de/gist-via-oembed-in-wordpress-einbinden/1425/#comments</comments>
		<pubDate>Fri, 08 Mar 2013 14:18:39 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Tipps]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[oembed]]></category>
		<category><![CDATA[WP]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=1425</guid>
		<description><![CDATA[WordPress hat seit geraumer Zeit die oEmbed Integration um einfach und unkompliziert Inhalte von anderen Siters und Services einzubinden. Besonders bekannt sind dabei diverse Video-Portale und seit der letzten WordPress Version Twitter. Wie so oft in WordPress kann man diese Möglichkeit nutzen und erweitern. In meinem Fall ging es darum, dass Inhalt von Github Gists <a class="moretag" href="http://bueltge.de/gist-via-oembed-in-wordpress-einbinden/1425/">&#8594; Weiterlesen</a>]]></description>
				<content:encoded><![CDATA[<p>WordPress hat seit geraumer Zeit die oEmbed Integration um einfach und unkompliziert Inhalte von anderen Siters und Services einzubinden. Besonders bekannt sind dabei diverse Video-Portale und seit der letzten WordPress Version Twitter. Wie so oft in WordPress kann man diese Möglichkeit nutzen und erweitern. In meinem Fall ging es darum, dass Inhalt von Github Gists einfach integriert werden können, einfach per URL in den Inhalt kopieren und gut. Dabei ist ein kleines Plugin entstanden, welches auf <a href="https://github.com/inpsyde/Inpsyde-oEmbed-Gist">Github</a> liegt und von dort genutzt werden kann und ggf. auch via Fork erweitert werden kann.<br />
&raquo;&raquo; <a href="https://github.com/inpsyde/Inpsyde-oEmbed-Gist" title="Inpsyde-oEmbed-Gist">zum Plugin</a><br />
<span id="more-1425"></span><br />
Technisch ist es wichtig die Funktion <code>wp_embed_register_handler</code> anzusprechen und daher der Kern der Funktion. Alles weitere findet man im Source des Plugins. Die Funktion erlaubt es neu Handler zu definieren und diese geben dann die nötigen Inhalte zurück. In diesem Beispiel wird der String <code>gist</code> definiert, der die Funktione <code>wp_embed_handler_gist</code> als Callback nutzt und die Gist-URL als Parameter. Innerhalb der Funktion werden dann die Inhalte des Parameters ersetzt und die Rückgabe definiert.</p>
<pre><code class="php">
wp_embed_register_handler(
    'gist',
    '#https://gist.github.com/(?:[a-z0-9-]*/)?([a-z0-9]+)(\#file_(.+))?$#i',
    'wp_embed_handler_gist'
);

function wp_embed_handler_gist( $matches, $attr, $url, $rawattr ) {
    
    $embed = sprintf(
        '<script type="text/javascript" src="https://gist.github.com/%1$s.js%2$s"></script>',
        esc_attr( $matches[1] ),
        esc_attr( $matches[2] )
    );

    return apply_filters( 'embed_gist', $embed, $matches, $attr, $url, $rawattr );
}
</code></pre>
<hr />
<p><img src="http://bueltge.de/favicon.ico" alt="bueltge.de Favicon"/> <small>&copy; <a href="http://bueltge.de/">Frank B&uuml;ltge</a>, All rights reserved / Alle Rechte vorbehalten. (ID: 6e8b33de4342c4f2ca76b245199aeee8)</small></p>
<p>Danke für das Abonnieren meines <strong><a href="http://bueltge.de/feed/">Feed</a></strong>! Inhalt gefällt? <a href="http://bueltge.de/wunschliste/" title="Wunschliste">Danke sagen</a> &middot; <a href="http://bueltge.de/gist-via-oembed-in-wordpress-einbinden/1425/#respond" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/gist-via-oembed-in-wordpress-einbinden/1425/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/favicon.ico" />
		<media:content url="http://bueltge.de/favicon.ico" medium="image">
			<media:title type="html">bueltge.de Favicon</media:title>
		</media:content>
	</item>
		<item>
		<title>Eiertanz</title>
		<link>http://bueltge.de/eiertanz/1494/</link>
		<comments>http://bueltge.de/eiertanz/1494/#comments</comments>
		<pubDate>Mon, 28 Jan 2013 12:43:12 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Bike]]></category>
		<category><![CDATA[Kommentar]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=1494</guid>
		<description><![CDATA[Und es geht wieder los. Nach einer Woche Pause von dem täglichen Ritt zur Arbeit habe ich mich heute morgen wieder auf den Weg gemacht. Das Rad und ich - unterwegs. Schön ist es, auch wenn Radwege nicht im Fokus der Gemeinden stehen und damit der Weg sehr verharscht und eisig ist. Nicht alle Wege <a class="moretag" href="http://bueltge.de/eiertanz/1494/">&#8594; Weiterlesen</a>]]></description>
				<content:encoded><![CDATA[<p>Und es geht <a href="http://bueltge.de/nebelgeister/1451/">wieder</a> los. Nach einer Woche Pause von dem täglichen Ritt zur Arbeit habe ich mich heute morgen wieder auf den Weg gemacht. Das Rad und ich - unterwegs.<br />
Schön ist es, auch wenn Radwege nicht im Fokus der Gemeinden stehen und damit der Weg sehr verharscht und eisig ist. Nicht alle Wege sind so frei und mit wenig Eis versehen wie das Stück auf dem folgenden Bild. Die Technik schults, das Gemüht freut es. Daher bekommt mein Geist neue Impulse und frische Luft für den ganzen Körper, was unglaublich gut tut, wenn man recht viel Zeit im Büro am Rechenknecht verbingt. Darum freut es mich um so mehr, dass das Fahren ohne Licht zum Sehen möglich ist - auch einige Sonnenstrahlen finden Weg zu mir und machen den Neustart in die Woche noch schöner. </p>
<p><a href="http://bueltge.de/wp-content/images/img_20130128_075835.jpg"><img src="http://bueltge.de/wp-content/images/img_20130128_075835-640x480.jpg" alt="IMG_20130128_075835" alt="Unterwegs mit dem Rad zur Arbeit" class="aligncenter size-medium wp-image-1495" /></a><br />
<hr />
<p><img src="http://bueltge.de/favicon.ico" alt="bueltge.de Favicon"/> <small>&copy; <a href="http://bueltge.de/">Frank B&uuml;ltge</a>, All rights reserved / Alle Rechte vorbehalten. (ID: 6e8b33de4342c4f2ca76b245199aeee8)</small></p>
<p>Danke für das Abonnieren meines <strong><a href="http://bueltge.de/feed/">Feed</a></strong>! Inhalt gefällt? <a href="http://bueltge.de/wunschliste/" title="Wunschliste">Danke sagen</a> &middot; <a href="http://bueltge.de/eiertanz/1494/#respond" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/eiertanz/1494/feed/</wfw:commentRss>
		<slash:comments>20</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/wp-content/images/img_20130128_075835-470x470.jpg" />
		<media:content url="http://bueltge.de/wp-content/images/img_20130128_075835-980x450.jpg" medium="image">
			<media:title type="html">IMG_20130128_075835</media:title>
			<media:thumbnail url="http://bueltge.de/wp-content/images/img_20130128_075835-470x470.jpg" />
		</media:content>
		<media:content url="http://bueltge.de/favicon.ico" medium="image">
			<media:title type="html">bueltge.de Favicon</media:title>
		</media:content>
	</item>
		<item>
		<title>Responsive Table und WordPress</title>
		<link>http://bueltge.de/responsive-table-und-wordpress/1490/</link>
		<comments>http://bueltge.de/responsive-table-und-wordpress/1490/#comments</comments>
		<pubDate>Mon, 28 Jan 2013 11:58:58 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[CSS, xHTML, JS]]></category>
		<category><![CDATA[Tipps]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=1490</guid>
		<description><![CDATA[Responsive hier und da - das Thema hat gewicht bekommen und endlich ist es populärer als in den Diskussionen von Entwicklern, die dem Thema nahe stehen. Responsive ist für mich mehr als das Nutzen einiger Mediaqueries auf bestimmte Werte und das Anpassen der Optik. Aber darum soll es hier nicht gehen, dazu gibt es ausreichend <a class="moretag" href="http://bueltge.de/responsive-table-und-wordpress/1490/">&#8594; Weiterlesen</a>]]></description>
				<content:encoded><![CDATA[<p>Responsive hier und da - das Thema hat gewicht bekommen und endlich ist es populärer als in den Diskussionen von Entwicklern, die dem Thema nahe stehen. Responsive ist für mich mehr als das Nutzen einiger Mediaqueries auf bestimmte Werte und das Anpassen der Optik. Aber darum soll es hier nicht gehen, dazu gibt es ausreichend Beiträge auf anderen Sites und ein ausführliches Buch "<a title="Die Site zum Buch" href="http://responsive-webdesign-buch.de/">Responsive Webdesign: Reaktionsfähige Websites gestalten und umsetzen</a>" in deutscher Sprache von Christoph Zillgens.</p>
<p>Für mich war in letzter Zeit ein Thema in diesem Umfeld etwas aktueller, denn ich habe diverse WordPress Instanzen laufen, die zu Dokumentationszwecken von Entwicklungen dienen. Dabei erstellen die Kunden eine ganze Reihe von tabellarischen Daten und wenn diese in Meetings und Vorstellungen via Beamer dargestellt werden, dann ging die Auflösng rapide nach untern und die 1900 Pixel-Bildschirme stehen nicht mehr zur Verfügung. Daher lag es nahe, dass Tabellen mit einer Lösung ausgestattet werden, die trotzdem für eine sinnvolle Darstellung sorgt.<br />
<span id="more-1490"></span><br />
Nun ist das Thema der flexiblen Tabellen auch nicht mehr neu und man kann sich auf die Suche nach Lösungen begeben. Die Lösung kann beliebig komplex ausfallen und auf unterschiedliche Anforderungen zugeschnitten werden. Sei es mit einer <a title="Responsive Data Tables" href="http://css-tricks.com/responsive-data-tables/">reinen CSS Lösung</a> oder dem Eingriff via JavaScript, beliebig komplex. Sinnvoll ist hier <a href="http://grochtdreis.de/weblog/2012/03/27/eine-tabelle-mobil-freundlich-machen/">der Beitrag</a> von Jens, da er die Hintergründe uns seine Überlegungen darlegt.</p>
<p><a href="http://bueltge.de/wp-content/images/table.png"><img src="http://bueltge.de/wp-content/images/table-640x115.png" alt="table" class="aligncenter size-medium wp-image-1491" /></a></p>
<p>Für meine Umsetzung war eine schnelle Hilfreiche Lösung notwendig. Das Thema JavaScript ja/nein stand nicht zur Debatte, da es sich um die Nutzung innerhalb eines Unternehmes, im Intranet, handelt und JS aktiv ist. Trotzdem habe ich mich für eine eine Umstrukturierung der Tabelle entschieden und stelle die Tabelle von links nach rechts, beginnend mit den Kopfdaten dar.</p>
<p><img src="http://bueltge.de/wp-content/images/table-small-640x112.png" alt="table-small" class="aligncenter size-medium wp-image-1492" /></p>
<p><img src="http://bueltge.de/wp-content/images/table-smallest.png" alt="table-smallest" class="aligncenter size-full wp-image-1493" /></p>
<p>Der Grund war in erster Linie, dass die Leute einfache Tabellen in die Artikel werfen. Für eine weitere Lösung - <a href="http://www.zurb.com/playground/responsive-tables">Scrollende Tabellen mit fester 1. Spalte</a>, die mir gefällt, müssen sie die Tabelle mit einer Klasse ergänzen. Beide Lösungen sind implementiert und aktuell prüfe ich noch, wie die Anwender mit welcher Lösung zurecht kommen. Aber die Umstrukturierung kommt gut an. Man darf nicht vergessen, die Anwender sehen die Tabelle, je nach Auflösung und verändern nicht live die Größe, so dass sie Veränderung der Spalten nicht mitbekommen. Trotzdem ist die Lösung via JS und CSS sinnvoll und ggf. zu verwenden. Da diese aber eine Klasse ander Tabelle benötigt und dies nicht einfach dynamisch zu ergänzen ist, halte ich die reine CSS-Lösung für sinnvoll und schlank.<br />
Den folgenden Code lege ich in der <code>functions.php</code> des Themes ab und nutzte die Funktion für die Inkludierung aller Stylesheets und Scripte.</p>
<pre><code class="php">
if ( ! function_exists( 'documentation_scripts_styles' ) ) {

	add_action( 'wp_enqueue_scripts', 'documentation_scripts_styles' );
	/**
	 * Enqueue scripts and styles for front-end.
	 *
	 * @since 2.0
	 */
	function documentation_scripts_styles() {

		// set suffix for debug mode
		$suffix = defined( 'SCRIPT_DEBUG' ) &amp;&amp; SCRIPT_DEBUG ? '.dev' : '';

		// Register responsive table script
		// Kudos to Responsive Tables project
		// @see  http://www.zurb.com/playground/responsive-tables
		wp_register_script(
			'documentation-responsive-tables',
			get_template_directory_uri() . '/js/responsive-tables' . $suffix . '.js',
			array( 'jquery' ),
			'01/14/2013',
			TRUE
		);

		// Register responsive table style
		wp_register_style(
			'documentation-responsive-tables',
			get_template_directory_uri() . '/css/responsive-tables' . $suffix . '.css',
			array(),
			'01/14/2013',
			'screen'
		);

		wp_enqueue_script( 'documentation-responsive-tables' );
		wp_enqueue_style( 'documentation-responsive-tables' );
	}

} // end if func exists
</code></pre>
<p>Der Code dient vor allem zum Aufzeigen der Implementierung. Keine Veränderung des head oder desr Footer-Bereiches. Das Registrieren und Inkludieren via Funktionen von WordPress. Damit wird es nicht nur einfacher für andere darauf einzuwirken, abschalten oder zu nutzen, sondern auch die Paketierung im Live-Modus in eine Datei ist einfacher.</p>
<p>Das Thema ist nicht einfach, kann beliebig umfangreich werden und Fallbacks für NonJS Aufrufe können ebenso aufwendig werden. Daher sehe ich die Anforderung des Kunden hier als wichtigstes Kriterium und nicht das reine aktivieren einer fertigen Lösung. Trotzdem hier der Verweis auf zwei Lösungen, die mir aufgefallen sind.</p>
<ul>
<li><a href="https://github.com/bradvin/FooTable">FooTable</a></li>
<li><a href="http://www.zurb.com/playground/responsive-tables">Responsive Tables</a></li>
</ul>
<p>Alternativ freue ich mich ebenso, wenn mein <a title="Github Projekt Documentation" href="https://github.com/bueltge/Documentation">Theme Documentation</a> mit dieser vorgestellten Lösung ggf. erweitert wird oder neue Ideen hinzukommen.<br />
<hr />
<p><img src="http://bueltge.de/favicon.ico" alt="bueltge.de Favicon"/> <small>&copy; <a href="http://bueltge.de/">Frank B&uuml;ltge</a>, All rights reserved / Alle Rechte vorbehalten. (ID: 6e8b33de4342c4f2ca76b245199aeee8)</small></p>
<p>Danke für das Abonnieren meines <strong><a href="http://bueltge.de/feed/">Feed</a></strong>! Inhalt gefällt? <a href="http://bueltge.de/wunschliste/" title="Wunschliste">Danke sagen</a> &middot; <a href="http://bueltge.de/responsive-table-und-wordpress/1490/#respond" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/responsive-table-und-wordpress/1490/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/wp-content/images/table-470x160.png" />
		<media:content url="http://bueltge.de/wp-content/images/table.png" medium="image">
			<media:title type="html">table</media:title>
			<media:thumbnail url="http://bueltge.de/wp-content/images/table-470x160.png" />
		</media:content>
		<media:content url="http://bueltge.de/wp-content/images/table-small.png" medium="image">
			<media:title type="html">table-small</media:title>
			<media:thumbnail url="http://bueltge.de/wp-content/images/table-small-470x124.png" />
		</media:content>
		<media:content url="http://bueltge.de/wp-content/images/table-smallest.png" medium="image">
			<media:title type="html">table-smallest</media:title>
			<media:thumbnail url="http://bueltge.de/wp-content/images/table-smallest-470x142.png" />
		</media:content>
		<media:content url="http://bueltge.de/favicon.ico" medium="image">
			<media:title type="html">bueltge.de Favicon</media:title>
		</media:content>
	</item>
		<item>
		<title>Git Autokorrektur</title>
		<link>http://bueltge.de/git-autokorrektur/1487/</link>
		<comments>http://bueltge.de/git-autokorrektur/1487/#comments</comments>
		<pubDate>Thu, 24 Jan 2013 07:57:34 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[git]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=1487</guid>
		<description><![CDATA[Git ist mindestens seit der Popularität von Github für viele Leute ein Thema. Damit rückt auch das Terminal und das Eintippen von Befehlen wieder in den Fokus der Entwickler. Ja. es gibt auch Tools und Integration, die Arbeit mit dem Terminal ist trotzdem oft schneller und flexibler. Dabei ist es natürlich auch möglich, dass ein <a class="moretag" href="http://bueltge.de/git-autokorrektur/1487/">&#8594; Weiterlesen</a>]]></description>
				<content:encoded><![CDATA[<p>Git ist mindestens seit der Popularität von <a href="https://github.com/">Github</a> für viele Leute ein Thema. Damit rückt auch das Terminal und das Eintippen von Befehlen wieder in den Fokus der Entwickler. Ja. es gibt auch Tools und Integration, die Arbeit mit dem Terminal ist trotzdem oft schneller und flexibler. Dabei ist es natürlich auch möglich, dass ein Vertipper auftritt. In diesem Zusammenhang ein kleiner Tipp, wie Vertipper von Git automatisch korrigiert werden und der Befehl trotzdem ausgeführt wird.<br />
<span id="more-1487"></span></p>
<p>Im standard für ein falsches git Kommando, wie <code>$ git statud</code> zu folgender Antwort.</p>
<pre><code class="bash">
git: 'statud' is not a git command. See 'git --help'.

Did you mean this?
	status
</code></pre>
<p>Setzt man den Konfigurationswert der Autokorrektur auf 1, folgende Syntax für das Terminal:<br />
<code>$ git config --global help.autocorrect 1</code></p>
<p>so führt die Eingabe mit der Vertipper des Status <code>$ git statud</code> zu:</p>
<pre><code class="bash">
WARNING: You called a Git command named 'statud', which does not exist.
Continuing under the assumption that you meant 'status'
in 0.1 seconds automatically...
</code></pre>
<p>Ab und an sinnvoll, ein Nachteil konnte ich noch nicht bemerken. Weitere Einstellungen dieser Art lassen sich in der git Dokumentation zum <a title="Customizing Git - Git Configuration" href="http://git-scm.com/book/ch7-1.html">Thema Konfiguration</a> zu finden.<br />
<hr />
<p><img src="http://bueltge.de/favicon.ico" alt="bueltge.de Favicon"/> <small>&copy; <a href="http://bueltge.de/">Frank B&uuml;ltge</a>, All rights reserved / Alle Rechte vorbehalten. (ID: 6e8b33de4342c4f2ca76b245199aeee8)</small></p>
<p>Danke für das Abonnieren meines <strong><a href="http://bueltge.de/feed/">Feed</a></strong>! Inhalt gefällt? <a href="http://bueltge.de/wunschliste/" title="Wunschliste">Danke sagen</a> &middot; <a href="http://bueltge.de/git-autokorrektur/1487/#respond" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/git-autokorrektur/1487/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/favicon.ico" />
		<media:content url="http://bueltge.de/favicon.ico" medium="image">
			<media:title type="html">bueltge.de Favicon</media:title>
		</media:content>
	</item>
		<item>
		<title>WordPress Theme Customizer Custom Controls</title>
		<link>http://bueltge.de/wordpress-theme-customizer-custom-controls/1482/</link>
		<comments>http://bueltge.de/wordpress-theme-customizer-custom-controls/1482/#comments</comments>
		<pubDate>Tue, 15 Jan 2013 15:01:58 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Tipps]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=1482</guid>
		<description><![CDATA[Puh, schwerer Titel - aber er trifft es und es ist schwer die Möglichkeit in deutscher Sprache zu nennen ohne die gleiche Unsicherheit zu erzeugen. Der englische Begriff ist wenigstens auf die Begriffe von WordrPress zurück zu führen. Zum Verständnis daher einige Worte, die erklären, was ich sagen will und worum es geht. Der Customizer <a class="moretag" href="http://bueltge.de/wordpress-theme-customizer-custom-controls/1482/">&#8594; Weiterlesen</a>]]></description>
				<content:encoded><![CDATA[<p>Puh, schwerer Titel - aber er trifft es und es ist schwer die Möglichkeit in deutscher Sprache zu nennen ohne die gleiche Unsicherheit zu erzeugen. Der englische Begriff ist wenigstens auf die Begriffe von WordrPress zurück zu führen. Zum Verständnis daher einige Worte, die erklären, was ich sagen will und worum es geht.</p>
<p>Der <a title="WordPress Customizer" href="http://bueltge.de/wordpress-customizer/1449/">Customizer</a> ist eine recht junge Möglichkeit von WordPress um Themes mit Optionen zu versorgen. Dabei ist das Visuelle besonders im Vordergrund, man gestaltet die Optionen direkt im Frontend am Theme, spielt und speichert die Einstellungen. Einige Zeilen dazu habe ich in einem älteren Artikel hinterlegt und ebenso <a href="http://bueltge.de/wordpress-customizer">die Slides</a> zum Thema hinterlegt.</p>
<p>Nun soll es in diesem Beitrag gehen, wie man eigene Klassen erstellt, die die Controls erweitern, da nicht alle Felder und Wünsche im Core hinterlegt sind. Dabei kann man auf bestehende Lösungen der Community zugreifen oder eigenen Klassen erstellen. Im ersten Schritt daher einen kurze Einführung für neue Klassen und im Anschluss der Hinweis zu mir bekannten Klassen. Bitte erweitert in dem ihr mir über die Kommentarfunktion Links nennt.<br />
<span id="more-1482"></span></p>
<h3>Grundstruktur der Klasse</h3>
<pre><code class="php">
if ( class_exists( 'WP_Customize_Control' ) ) {
     class Documentation_Customize_Textarea_Control extends WP_Customize_Control {
          // todo
     }
}
</code></pre>
<h3>Methoden der Klasse</h3>
<p>Eine ganze Reihe von Methoden stehen bereit nd können überschrieben werden.</p>
<ul>
<li>enqueue() - Scripte und Stylesheets zur Klasse hinzufügen</li>
<li>value() - Holen von Einstellungen</li>
<li>to_json() - Übergib die Daten an ein JS; via JSON</li>
<li>check_capabilities() - Prüfe das Rechteobjekt um die Control zu nutzen</li>
<li>maybe_render() - Prüfung über das Rechteobjekt, ob das Rendern erfolgen soll</li>
<li>render() - Ausgabe des Inhalt durch Aufruf von render_content().</li>
<li>render_content() - Ausgabe der Controler</li>
</ul>
<h3>Beispiel Erweiterung</h3>
<p>Als kleines Beispiel soll eine Klasse entstehen, die das Verwenden von textarea-Elementen im Customizer ermöglicht. Die wichtigste Methode dafür ist <code>render()</code> und darin muss das Markup und alle Ausgabe-Objekte erscheinen. Konstruktor und deklarierte Variablen sind nicht zwingend.</p>
<pre><code class="php">
&lt;?php
/**
 * Customize for textarea, extend the WP customizer
 *
 * @package    WordPress
 * @subpackage Documentation
 * @since      10/16/2012
 */

if ( ! class_exists( 'WP_Customize_Control' ) )
	return NULL;

class Documentation_Customize_Textarea_Control extends WP_Customize_Control {

	/**
	 * @access public
	 * @var    string
	 */
	public $type = 'textarea';

	/**
	 * @access public
	 * @var    array
	 */
	public $statuses;

	/**
	 * Constructor.
	 *
	 * If $args['settings'] is not defined, use the $id as the setting ID.
	 *
	 * @since   10/16/2012
	 * @uses    WP_Customize_Control::__construct()
	 * @param   WP_Customize_Manager $manager
	 * @param   string $id
	 * @param   array $args
	 * @return  void
	 */
	public function __construct( $manager, $id, $args = array() ) {

		$this-&gt;statuses = array( '' =&gt; __( 'Default' ) );
		parent::__construct( $manager, $id, $args );
	}

	/**
	 * Render the control's content.
	 * 
	 * Allows the content to be overriden without having to rewrite the wrapper.
	 * 
	 * @since   10/16/2012
	 * @return  void
	 */
	public function render_content() {
		?&gt;
		&lt;label&gt;
			&lt;span class="customize-control-title"&gt;&lt;?php echo esc_html( $this-&gt;label ); ?&gt;&lt;/span&gt;
			&lt;textarea class="large-text" cols="20" rows="5" &lt;?php $this-&gt;link(); ?&gt;&gt;
				&lt;?php echo esc_textarea( $this-&gt;value() ); ?&gt;
			&lt;/textarea&gt;
		&lt;/label&gt;
		&lt;?php
	}

}
</code></pre>
<p>Die entstandenen Klasse verwende ich beispielsweise im <a title="Documentations Theme für WordPress" href="http://bueltge.de/documentations-theme-fuer-wordpress/469/">Theme Documentation</a>, Download und Pflegestatus auf <a href="https://github.com/bueltge/Documentation">Github</a>. Alternativ könnt ihr die Klasse aus dem Projekt <a href="https://github.com/bueltge/Wordpress-Theme-Customizer-Custom-Controls">WordPress-Theme-Customizer-Custom-Controls</a> auf Github holen, erweitern, verbessern; wo es weitere Klassen gibt.</p>
<h3>Kollektion von Klassen, die die Controls des Customizer erweitern:</h3>
<ul>
<li><a href="https://github.com/paulund/Wordpress-Theme-Customizer-Custom-Controls">WordPress-Theme-Customizer-Custom-Controls auf Github</a></li>
<li><a href="https://github.com/bueltge/Wordpress-Theme-Customizer-Custom-Controls">Fork: WordPress-Theme-Customizer-Custom-Controls auf Github</a></li>
<li><a href="https://github.com/saas786/WordPress-Theme-Settings-Customizer-Boilerplate">WordPress-Theme-Settings-Customizer-Boilerplate auf Github</a></li>
</ul>
<hr />
<p><img src="http://bueltge.de/favicon.ico" alt="bueltge.de Favicon"/> <small>&copy; <a href="http://bueltge.de/">Frank B&uuml;ltge</a>, All rights reserved / Alle Rechte vorbehalten. (ID: 6e8b33de4342c4f2ca76b245199aeee8)</small></p>
<p>Danke für das Abonnieren meines <strong><a href="http://bueltge.de/feed/">Feed</a></strong>! Inhalt gefällt? <a href="http://bueltge.de/wunschliste/" title="Wunschliste">Danke sagen</a> &middot; <a href="http://bueltge.de/wordpress-theme-customizer-custom-controls/1482/#respond" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/wordpress-theme-customizer-custom-controls/1482/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/favicon.ico" />
		<media:content url="http://bueltge.de/favicon.ico" medium="image">
			<media:title type="html">bueltge.de Favicon</media:title>
		</media:content>
	</item>
		<item>
		<title>We are Traffic</title>
		<link>http://bueltge.de/we-are-traffic/1479/</link>
		<comments>http://bueltge.de/we-are-traffic/1479/#comments</comments>
		<pubDate>Mon, 07 Jan 2013 15:31:11 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Linktipp]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=1479</guid>
		<description><![CDATA[WE ARE TRAFFIC ist eine fortlaufende Fotoserie, welche die Radfahrer/-innen Hamburgs porträtiert.]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.wearetraffic.de/" title="WE ARE TRAFFIC ist eine fortlaufende Fotoserie, welche die Radfahrer/-innen Hamburgs porträtiert."><img src="http://bueltge.de/wp-content/images/wearetraffic-1350249555_600-600x450.jpg" alt="wearetraffic-1350249555_600" class="aligncenter size-full wp-image-1480" /></a></p>
<p>.. wünsche ich mir welt- oder wenigstens deutschlandweit; Photographen bitte vor.<br />
<hr />
<p><img src="http://bueltge.de/favicon.ico" alt="bueltge.de Favicon"/> <small>&copy; <a href="http://bueltge.de/">Frank B&uuml;ltge</a>, All rights reserved / Alle Rechte vorbehalten. (ID: 6e8b33de4342c4f2ca76b245199aeee8)</small></p>
<p>Danke für das Abonnieren meines <strong><a href="http://bueltge.de/feed/">Feed</a></strong>! Inhalt gefällt? <a href="http://bueltge.de/wunschliste/" title="Wunschliste">Danke sagen</a> &middot; <a href="http://bueltge.de/we-are-traffic/1479/#respond" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/we-are-traffic/1479/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/wp-content/images/wearetraffic-1350249555_600-470x470.jpg" />
		<media:content url="http://bueltge.de/wp-content/images/wearetraffic-1350249555_600-600x450.jpg" medium="image">
			<media:title type="html">wearetraffic-1350249555_600</media:title>
			<media:thumbnail url="http://bueltge.de/wp-content/images/wearetraffic-1350249555_600-470x470.jpg" />
		</media:content>
		<media:content url="http://bueltge.de/favicon.ico" medium="image">
			<media:title type="html">bueltge.de Favicon</media:title>
		</media:content>
	</item>
		<item>
		<title>Update-Prüfung für ausgewählte Plugins in WordPress Multisite unterbinden</title>
		<link>http://bueltge.de/update-pruefung-fuer-ausgewaehlte-plugins-in-wordpress-multisite-unterbinden/1477/</link>
		<comments>http://bueltge.de/update-pruefung-fuer-ausgewaehlte-plugins-in-wordpress-multisite-unterbinden/1477/#comments</comments>
		<pubDate>Mon, 07 Jan 2013 02:38:57 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Tipps]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[WP]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=1477</guid>
		<description><![CDATA[Die Update-Prüfung in einer Multisite Installation unterbinden kann nützlich sein, aber in der Regel nur für eine Auswahl an Plugins, die nicht im Repo  gelistet sind und damit keiner Prüfung unterliegen. Das folgenden Plugin soll einen Ansatz darstellen, es funktioniert und kann gern erweitert werden, mehr Komfort ist sicher für den einen oder anderen nützlich.]]></description>
				<content:encoded><![CDATA[<p>Nichte selten werden für Kunden spezielle Plugins erstellt, die nicht im offiziellen Repository von WordPress liegen und trotzdem der Update-Prüfung unterliegen. Auch kann es dazu kommen, dass Plugins im Repository hinzukommen, die den gleichen Namen haben und damit ggf. versehentlich vom Anwender durch das Autoupdate überschrieben werden. Für eigene Plugins kann man dies in einer Single-Installation <a href="http://bueltge.de/update-pruefung-fuer-themes-entfernen/1076/" title="Update Prüfung für Themes entfernen">recht gut unterbinden</a> - in einer Multisite Installation sieht dies anders aus. Ist das jeweilige Plugin in einem Blog des Netzwerkes aktiviert, dann wird die Prüfung durch das Plugin auch nur dort unterbunden, denn nur in dem Blog ist es inkludiert. In der Netzwerkverwaltung bleibt die Prüfung aktiv und ggf. werden dort Updates angeboten und überschreiben das Plugin.<br />
<span id="more-1477"></span><br />
Daher im folgenden kleines Plugin, welches ein Array besitzt, in dem die Plugins gelistet sind, die nicht bei der Update-Prüfung mitlaufen sollen. Das Plugin muss Netzwerkweit aktiviert werden.</p>
<pre><code class="php">
&lt;?php
/**
 * Plugin Name: Plugin updates blocker
 * Plugin URI:  
 * Description: Disable plugin update check for specific plugins list
 * Version:     1.0.0
 * Author:      Frank Bültge
 * Author URI:  http://bueltge.de
 * License:     GPLv3
 */

! defined( 'ABSPATH' ) and exit;

add_filter( 'http_request_args', 'fb_block_update_specific_plugins', 5, 2 );
function fb_block_update_specific_plugins( $r, $url ) {
	
	//var_dump( unserialize( $r['body']['plugins'] ) );
	
	if ( FALSE === stripos( $url, 'api.wordpress.org/plugins/update-check' ) )
		return $r;
	
	// array for the plugin slug - folder/file
	$blocked_plugins = array(
		'oembed-gist.php', // plugin without folder
		'subtitle/class-post_subtitle.php',
		'wp-slabText/wp-slabtext.php',
	);
	if ( empty( $blocked_plugins ) )
		return $r;
	
	$installed_plugins = unserialize( $r['body']['plugins'] );
	foreach( $blocked_plugins as $p ) {
		unset( $installed_plugins->plugins[ $p ] );
		unset( $installed_plugins->active[ array_key_exists( $p, $installed_plugins ) ] );
	}
	$r['body']['plugins'] = serialize( $installed_plugins );
	
	return $r;
}
</code></pre>
<p>Das obige Plugin soll einen Ansatz darstellen, es funktioniert und kann gern erweitert werden. Mehr Komfort ist sicher für den einen oder anderen nützlich.<br />
<hr />
<p><img src="http://bueltge.de/favicon.ico" alt="bueltge.de Favicon"/> <small>&copy; <a href="http://bueltge.de/">Frank B&uuml;ltge</a>, All rights reserved / Alle Rechte vorbehalten. (ID: 6e8b33de4342c4f2ca76b245199aeee8)</small></p>
<p>Danke für das Abonnieren meines <strong><a href="http://bueltge.de/feed/">Feed</a></strong>! Inhalt gefällt? <a href="http://bueltge.de/wunschliste/" title="Wunschliste">Danke sagen</a> &middot; <a href="http://bueltge.de/update-pruefung-fuer-ausgewaehlte-plugins-in-wordpress-multisite-unterbinden/1477/#respond" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/update-pruefung-fuer-ausgewaehlte-plugins-in-wordpress-multisite-unterbinden/1477/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/favicon.ico" />
		<media:content url="http://bueltge.de/favicon.ico" medium="image">
			<media:title type="html">bueltge.de Favicon</media:title>
		</media:content>
	</item>
		<item>
		<title>Taxonomien im WordPress Media Manager nutzen</title>
		<link>http://bueltge.de/taxonomien-im-wordpress-media-manager-nutzen/1474/</link>
		<comments>http://bueltge.de/taxonomien-im-wordpress-media-manager-nutzen/1474/#comments</comments>
		<pubDate>Sat, 05 Jan 2013 11:24:41 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Tipps]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[mediathek]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[WP]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=1474</guid>
		<description><![CDATA[Taxonomien, Kategorisierung an Medien ist nicht selten ein Wunsch in der Verwaltung der Anhänge in WordPress. Mit WordPress 3.5 kommen hier neue Möglichkeiten, die vorgestellt werden sollen und eine fertige Lösung anbieten.]]></description>
				<content:encoded><![CDATA[<p>Mit WordPress 3.5 hat sich insbesondere im Medien- und Attachment Umfeld viel geändert. Es wurde nicht nur in der Oberfläche geschraubt sondern auch viel im Workflow und in den Standards geändert. So benutzt die Medienverwaltung seit 3.5 die Standard-UI der Post Types und kann daher ebenso einfach erweitert werden, wie das bereits von anderen Post-Typen bekannt ist. So lassen sich einfach Meta Boxen ergänzen und neue Daten und Inhalte speichern. In diesem Zusammenhang kann man daher auch recht einfach eine Kategorisierung, Taxonomie zu den Medien aktivieren. Dazu möchte ich zwei Lösungen vorstellen, die einfach genutzt werden können oder zum weiter entwickeln anregen.<br />
<span id="more-1474"></span><br />
Im ersten kleinen Plugin werden lediglich die Taxonomien "Kategorien" und "Schlagworte" der Beiträge zu den Medien hinzugefügt. So ist eine zentrale Verwaltung möglich und wer die Tags und Kategorien der Posts dafür verwenden möchte, der hat so eine schnelle und einfache Lösung um seine Medien zu verwalten.</p>
<pre><code class="php">
&lt;?php
/**
 * Plugin Name: Attachment Taxonomies
 * Plugin URI:  
 * Text Domain: attachment_taxonomies
 * Domain Path: /languages
 * Description: 
 * Version:     1.0.0
 * Author:      Frank Bültge
 * Author URI:  http://bueltge.de
 * License:     GPLv3
 */

add_action( 'init', 'fb_attachment_taxonomies' );
function fb_attachment_taxonomies() {

    $taxonomies = array( 'category', 'post_tag' ); // add the 2 tax to ...
    foreach ( $taxonomies as $tax ) {
        register_taxonomy_for_object_type( $tax, 'attachment' ); // add to post type attachment
    }
}
</code></pre>
<p>Die zweite Lösung ist ein wenig aufwendiger, da eigene Taxonomien für die Kategorien und Schlagworte zu den Medien angelegt werden. Dafür sind diese auch nur den Medien zugeordnet und dort verwendbar. Die beiden Screenshots verdeutlichen die Nutzung und ebenso den Unterschied der Standard UI beim Editieren von Medien und die Sicht im Popup aus einem Artikel heraus. Hier hat man sich bewusst dafür entschieden, dass hierarchische Taxonomien in einem Input-Feld dargestellt werden, so dass mehr Platz gewonnen wird und die Liste der Kategorien ist nicht wie gewohnt aus dem Edit-Umfeld mit Checkboxen versehen. Dazu muss man mehr erweitern und eine eigene Ausgabe erweitern.</p>
<p><a href="http://bueltge.de/wp-content/images/edit-medien-wordpress35.jpg"><img src="http://bueltge.de/wp-content/images/edit-medien-wordpress35-640x567.jpg" alt="edit-medien-wordpress35" class="aligncenter size-medium wp-image-1476" /></a></p>
<p><a href="http://bueltge.de/wp-content/images/medien-verwaltung-popup-wp35.png"><img src="http://bueltge.de/wp-content/images/medien-verwaltung-popup-wp35-640x517.png" alt="medien-verwaltung-popup-wp35" class="aligncenter size-medium wp-image-1475" /></a></p>
<pre><code class="php">
&lt;?php
/**
 * Plugin Name: Attachment Taxonomies
 * Plugin URI:  
 * Text Domain: attachment_taxonomies
 * Domain Path: /languages
 * Description: 
 * Version:     1.0.0
 * Author:      Frank Bültge
 * Author URI:  http://bueltge.de
 * License:     GPLv3
 */

if ( function_exists( 'add_filter' ) )
    add_action( 'plugins_loaded', array( 'Fb_Attachment_Taxonomies', 'get_object' ) );
/**
 * Add Tags and Categories taxonmies to Attachment with WP 3.5
 */
class Fb_Attachment_Taxonomies {

    static private $classobj;

    /**
     * Constructor, init the functions inside WP
     *
     * @since   1.0.0
     * @uses    add_action
     * @return  void
     */
    public function __construct() {

        // load translation files
        add_action( 'admin_init', array( $this, 'localize_plugin' ) );
        // add taxonmies
        add_action( 'init', array( $this, 'setup_taxonomies' ) );
    }

    /**
     * Handler for the action 'init'. Instantiates this class.
     *
     * @since   1.0.0
     * @access  public
     * @return  $classobj
     */
    public function get_object() {

        if ( NULL === self::$classobj ) {
            self::$classobj = new self;
        }

        return self::$classobj;
    }

    /**
     * Localize plugin function.
     *
     * @uses    load_plugin_textdomain, plugin_basename
     * @since   1.0.0
     * @return  void
     */
    public function localize_plugin() {

        load_plugin_textdomain(
            'attachment_taxonomies',
            FALSE,
            dirname( plugin_basename( __FILE__ ) ) . '/languages/'
        );
    }

    /**
     * Setup Taxonomies
     * Creates 'attachment_tag' and 'attachment_category' taxonomies.
     * Enhance via filter `fb_attachment_taxonomies`
     * 
     * @uses    register_taxonomy, apply_filters
     * @since   1.0.0
     * @return  void
     */
    public function setup_taxonomies() {

        $attachment_taxonomies = array();

        // Tags
        $labels = array(
            'name'              => _x( 'Media Tags', 'taxonomy general name', 'attachment_taxonomies' ),
            'singular_name'     => _x( 'Media Tag', 'taxonomy singular name', 'attachment_taxonomies' ),
            'search_items'      => __( 'Search Media Tags', 'attachment_taxonomies' ),
            'all_items'         => __( 'All Media Tags', 'attachment_taxonomies' ),
            'parent_item'       => __( 'Parent Media Tag', 'attachment_taxonomies' ),
            'parent_item_colon' => __( 'Parent Media Tag:', 'attachment_taxonomies' ),
            'edit_item'         => __( 'Edit Media Tag', 'attachment_taxonomies' ), 
            'update_item'       => __( 'Update Media Tag', 'attachment_taxonomies' ),
            'add_new_item'      => __( 'Add New Media Tag', 'attachment_taxonomies' ),
            'new_item_name'     => __( 'New Media Tag Name', 'attachment_taxonomies' ),
            'menu_name'         => __( 'Media Tags', 'attachment_taxonomies' ),
        );

        $args = array(
            'hierarchical'      => FALSE,
            'labels'            => $labels,
            'show_ui'           => TRUE,
            'show_admin_column' => TRUE, // new in WP 3.5
            'query_var'         => TRUE,
            'rewrite'           => TRUE,
        );

        $attachment_taxonomies[] = array(
            'taxonomy'  => 'attachment_tag',
            'post_type' => 'attachment',
            'args'      => $args
        );

        // Categories
        $labels = array(
            'name'              => _x( 'Media Categories', 'taxonomy general name', 'attachment_taxonomies' ),
            'singular_name'     => _x( 'Media Category', 'taxonomy singular name', 'attachment_taxonomies' ),
            'search_items'      => __( 'Search Media Categories', 'attachment_taxonomies' ),
            'all_items'         => __( 'All Media Categories', 'attachment_taxonomies' ),
            'parent_item'       => __( 'Parent Media Category', 'attachment_taxonomies' ),
            'parent_item_colon' => __( 'Parent Media Category:', 'attachment_taxonomies' ),
            'edit_item'         => __( 'Edit Media Category', 'attachment_taxonomies' ), 
            'update_item'       => __( 'Update Media Category', 'attachment_taxonomies' ),
            'add_new_item'      => __( 'Add New Media Category', 'attachment_taxonomies' ),
            'new_item_name'     => __( 'New Media Category Name', 'attachment_taxonomies' ),
            'menu_name'         => __( 'Media Categories', 'attachment_taxonomies' ),
        );

        $args = array(
            'hierarchical' => TRUE,
            'labels'       => $labels,
            'show_ui'      => TRUE,
            'query_var'    => TRUE,
            'rewrite'      => TRUE,
        );

        $attachment_taxonomies[] = array(
            'taxonomy'  => 'attachment_category',
            'post_type' => 'attachment',
            'args'      => $args
        );

        $attachment_taxonomies = apply_filters( 'fb_attachment_taxonomies', $attachment_taxonomies );

        foreach ( $attachment_taxonomies as $attachment_taxonomy ) {
            register_taxonomy(
                $attachment_taxonomy['taxonomy'],
                $attachment_taxonomy['post_type'],
                $attachment_taxonomy['args']
            );
        }

    }

} // end class
</code></pre>
<p>Ich lade wie immer gern ein die Plugins, insbesondere den zweiten Ansatz zu erweitern. Aktuell ist eine Sprachdatei vorgesehen, aber nicht dabei und es gibt ebenso kein Repo, wo man es pflegen kann. Aber hier kann jeder gern einhaken und mitwirken.<br />
<hr />
<p><img src="http://bueltge.de/favicon.ico" alt="bueltge.de Favicon"/> <small>&copy; <a href="http://bueltge.de/">Frank B&uuml;ltge</a>, All rights reserved / Alle Rechte vorbehalten. (ID: 6e8b33de4342c4f2ca76b245199aeee8)</small></p>
<p>Danke für das Abonnieren meines <strong><a href="http://bueltge.de/feed/">Feed</a></strong>! Inhalt gefällt? <a href="http://bueltge.de/wunschliste/" title="Wunschliste">Danke sagen</a> &middot; <a href="http://bueltge.de/taxonomien-im-wordpress-media-manager-nutzen/1474/#respond" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/taxonomien-im-wordpress-media-manager-nutzen/1474/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/wp-content/images/edit-medien-wordpress35-470x470.jpg" />
		<media:content url="http://bueltge.de/wp-content/images/edit-medien-wordpress35-980x450.jpg" medium="image">
			<media:title type="html">edit-medien-wordpress35</media:title>
			<media:thumbnail url="http://bueltge.de/wp-content/images/edit-medien-wordpress35-470x470.jpg" />
		</media:content>
		<media:content url="http://bueltge.de/wp-content/images/medien-verwaltung-popup-wp35-980x450.png" medium="image">
			<media:title type="html">medien-verwaltung-popup-wp35</media:title>
			<media:thumbnail url="http://bueltge.de/wp-content/images/medien-verwaltung-popup-wp35-470x470.png" />
		</media:content>
		<media:content url="http://bueltge.de/favicon.ico" medium="image">
			<media:title type="html">bueltge.de Favicon</media:title>
		</media:content>
	</item>
		<item>
		<title>George Bataille: dem Möglichen unterwerfen heißt &#8230;</title>
		<link>http://bueltge.de/george-bataille-dem-moeglichen-unterwerfen-heisst/1472/</link>
		<comments>http://bueltge.de/george-bataille-dem-moeglichen-unterwerfen-heisst/1472/#comments</comments>
		<pubDate>Wed, 02 Jan 2013 21:17:47 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Zitat]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=1472</guid>
		<description><![CDATA[Uns dem Möglichen unterwerfen heißt, uns aus der souveränen Welt der Sterne, der Winde, der Vulkane verbannen lassen. George Bataille &#169; Frank B&#252;ltge, All rights reserved / Alle Rechte vorbehalten. (ID: 6e8b33de4342c4f2ca76b245199aeee8) Danke für das Abonnieren meines Feed! Inhalt gefällt? Danke sagen &#183; Kommentieren]]></description>
				<content:encoded><![CDATA[<figure class="quote">
<blockquote>
<p>Uns dem Möglichen unterwerfen heißt, uns aus der souveränen Welt der Sterne, der Winde, der Vulkane verbannen lassen.</p>
<footer>George Bataille</footer>
</blockquote>
</figure>
<hr />
<p><img src="http://bueltge.de/favicon.ico" alt="bueltge.de Favicon"/> <small>&copy; <a href="http://bueltge.de/">Frank B&uuml;ltge</a>, All rights reserved / Alle Rechte vorbehalten. (ID: 6e8b33de4342c4f2ca76b245199aeee8)</small></p>
<p>Danke für das Abonnieren meines <strong><a href="http://bueltge.de/feed/">Feed</a></strong>! Inhalt gefällt? <a href="http://bueltge.de/wunschliste/" title="Wunschliste">Danke sagen</a> &middot; <a href="http://bueltge.de/george-bataille-dem-moeglichen-unterwerfen-heisst/1472/#respond" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/george-bataille-dem-moeglichen-unterwerfen-heisst/1472/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/favicon.ico" />
		<media:content url="http://bueltge.de/favicon.ico" medium="image">
			<media:title type="html">bueltge.de Favicon</media:title>
		</media:content>
	</item>
		<item>
		<title>Alle Jahre wieder</title>
		<link>http://bueltge.de/alle-jahre-wieder-2/1467/</link>
		<comments>http://bueltge.de/alle-jahre-wieder-2/1467/#comments</comments>
		<pubDate>Sun, 23 Dec 2012 13:06:27 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Danke]]></category>
		<category><![CDATA[Neujahr]]></category>
		<category><![CDATA[Weihnachten]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=1467</guid>
		<description><![CDATA[Ein weiteres Jahr geht zu Ende, wie immer: unglaublich schnell fliegt es vorbei und man fragt sich, wo die Zeit hin ist. Alle Jahre wieder nehme ich mir viel vor - viel im Sinne von weniger zu tun und mehr an mich und die Familie zu denken. Wie immer geht es schief und die Entschuldigungen <a class="moretag" href="http://bueltge.de/alle-jahre-wieder-2/1467/">&#8594; Weiterlesen</a>]]></description>
				<content:encoded><![CDATA[<p>Ein weiteres Jahr geht zu Ende, wie immer: unglaublich schnell fliegt es vorbei und man fragt sich, wo die Zeit hin ist. Alle Jahre wieder nehme ich mir viel vor - viel im Sinne von weniger zu tun und mehr an mich und die Familie zu denken. Wie immer geht es schief und die Entschuldigungen gehen meist zu Gunsten der Leidenschaft.<br />
<span id="more-1467"></span><br />
Ich glaube, dass ich ein vielseitiger Mensch bin. Ich habe viele Interessen und lasse ungern was aus; muss alles versuchen. Leidenschaft ist sicher mein Antrieb. Ich glaube ebenso, dass ich meine Berufung gefunden haben; ich tue meist das, was ich am besten kann. Leidenschaft gibt mir die nötige Energie, manchmal zu viel für die eigenen Ressourcen. Eine leidenschaftliche Person mit begrenzten Fähigkeiten wird eine passive Person mit großartigen Fähigkeiten vermutlich immer übertreffen, weil leidenschaftliche Menschen immer mit unbändigem Enthusiasmus handeln. Leidenschaft überwindet Furcht und macht viele Erlebnisse möglich. Darum lebe ich für und mit Leidenschaft - oft aber auch gegen den Vorsatz des weniger Tun und zu sich finden.</p>
<blockquote cite="Apostelgeschichte 20, 24"><p>Mein Leben ist nutzlos, wenn ich es nicht für den Dienst gebrauche, der mir gegeben wurde.</p>
<footer>Apostelgeschichte 20, 24</footer>
</blockquote>
<p>In diesem Sinne nehme ich mir als nichts für das neue Jahr vor. Ich habe viele tolle Projekte und Freunde und diese Themen müssen und wollen weiter verfolgt werden. Ich wünsche und arbeite dafür, dass diese Ideen Fliegen lernen, dass unsere gemeinsame Leidenschaft <a href="http://inpsyde.com/" title="Die Inpsyde GmbH ist Beratung und Umsetzung auf höchstem Niveau - die WordPress Agentur. Wir schaffen Lösungen im Sinne Ihrer Ziele, ob mit oder ohne WordPress.">Inpsyde</a> weiter geht, die <a href="http://marketpress.com/" title="Der Marktplatz für WordPress Plugins und Themes.">Rakete</a> gen Himmel geht und wir dabei den Bodenkontakt nicht verlieren. Viele andere Leidenschaften gilt es zu pflegen und zu frönen und ich freue mich auf ein neues Jahr, in dem ich mich darauf freuen kann und in dem ich diese Leidenschaften mit anderen teilen kann, egal ob Familie, Freunde oder Kollegen.</p>
<p>Daher auch in diesem Jahr und auf diesem Wege wünsche ich allen einige schöne Festtage, alles Gute, die besten Wünsche und ein schönes und vielfältiges neues Jahr. Ich danke für das Lesen dieses Blogs und die vielen Freundschaften die nur daraus entstanden sind und die bei einigen Leuten in weit mehr mündeten. Danke, wo immer ihr auch sein mögt und wie immer ihr auch zu diesen wenigen Worten findet!<br />
<hr />
<p><img src="http://bueltge.de/favicon.ico" alt="bueltge.de Favicon"/> <small>&copy; <a href="http://bueltge.de/">Frank B&uuml;ltge</a>, All rights reserved / Alle Rechte vorbehalten. (ID: 6e8b33de4342c4f2ca76b245199aeee8)</small></p>
<p>Danke für das Abonnieren meines <strong><a href="http://bueltge.de/feed/">Feed</a></strong>! Inhalt gefällt? <a href="http://bueltge.de/wunschliste/" title="Wunschliste">Danke sagen</a> &middot; <a href="http://bueltge.de/alle-jahre-wieder-2/1467/#respond" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/alle-jahre-wieder-2/1467/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/favicon.ico" />
		<media:content url="http://bueltge.de/favicon.ico" medium="image">
			<media:title type="html">bueltge.de Favicon</media:title>
		</media:content>
	</item>
		<item>
		<title>Passwortgeschützte WordPress Artikel in der Suche</title>
		<link>http://bueltge.de/passwortgeschuetzte-wordpress-artikel-in-der-suche/1464/</link>
		<comments>http://bueltge.de/passwortgeschuetzte-wordpress-artikel-in-der-suche/1464/#comments</comments>
		<pubDate>Thu, 20 Dec 2012 12:03:00 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Tipps]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[passwort]]></category>
		<category><![CDATA[Suche]]></category>
		<category><![CDATA[WP]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=1464</guid>
		<description><![CDATA[Aktuell können passwortgeschütze Beiträge in WordPress nicht über die Suche gefunden werden. Abhilfe schaft ein kleines Plugin, was den Query ändert und den String raus wirft, der diese Artikel nicht betrachtet. Das kleine Plugin als Datei anlegen, den folgenden Code via Copy/Paste rein und ab in den Ordner der Plugins kopieren, aktivieren und gut. Mit <a class="moretag" href="http://bueltge.de/passwortgeschuetzte-wordpress-artikel-in-der-suche/1464/">&#8594; Weiterlesen</a>]]></description>
				<content:encoded><![CDATA[<p>Aktuell können passwortgeschütze Beiträge in WordPress nicht über die Suche gefunden werden. Abhilfe schaft ein kleines Plugin, was den Query ändert und den String raus wirft, der diese Artikel nicht betrachtet.<br />
<span id="more-1464"></span><br />
Das kleine Plugin als Datei anlegen, den folgenden Code via Copy/Paste rein und ab in den Ordner der Plugins kopieren, aktivieren und gut. Mit WordPress 3.6 könnte dies anders werden, da ein <a href="http://core.trac.wordpress.org/ticket/20308#comment:8">Ticket</a> bzgl. diesem Thema aktuell ist.</p>
<pre><code class="php">
&lt;?php
/**
 * Plugin Name: Add password protected posts to search
 * Plugin URI:  
 * Description: Show Password-Protected Posts in WordPress Search Results
 * Version:     1.0.0
 * Author:      Frank Bültge
 * Author URI:  http://bueltge.de
 * License:     GPLv3
 */

! defined( 'ABSPATH' ) and exit;

add_filter( 'posts_search', 'fb_include_password_protected_posts' );
function fb_include_password_protected_posts( $search ) {
	
	if ( ! is_user_logged_in() ) {
		global $wpdb;
		
		$pattern = " AND ({$wpdb}posts.post_password = '')";
		$search = str_replace( $pattern, '', $search ); // replace sql string
	}
	
	return $search;
}
</code></pre>
<hr />
<p><img src="http://bueltge.de/favicon.ico" alt="bueltge.de Favicon"/> <small>&copy; <a href="http://bueltge.de/">Frank B&uuml;ltge</a>, All rights reserved / Alle Rechte vorbehalten. (ID: 6e8b33de4342c4f2ca76b245199aeee8)</small></p>
<p>Danke für das Abonnieren meines <strong><a href="http://bueltge.de/feed/">Feed</a></strong>! Inhalt gefällt? <a href="http://bueltge.de/wunschliste/" title="Wunschliste">Danke sagen</a> &middot; <a href="http://bueltge.de/passwortgeschuetzte-wordpress-artikel-in-der-suche/1464/#respond" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/passwortgeschuetzte-wordpress-artikel-in-der-suche/1464/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/favicon.ico" />
		<media:content url="http://bueltge.de/favicon.ico" medium="image">
			<media:title type="html">bueltge.de Favicon</media:title>
		</media:content>
	</item>
		<item>
		<title>WordPress Dropins</title>
		<link>http://bueltge.de/wordpress-dropins/1456/</link>
		<comments>http://bueltge.de/wordpress-dropins/1456/#comments</comments>
		<pubDate>Mon, 29 Oct 2012 14:02:35 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Dropin]]></category>
		<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[WP]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=1456</guid>
		<description><![CDATA[WordPress erlaubt das Ersetzen diverse Funktionen unter anderem mit den sogenannten Dropins. Die Liste der Möglichkeiten ist nicht sonderlich groß und doch wenig dokumentiert. Meine Erfahrungen und mein Wissen daher dazu in einem kurzen Beitrag.]]></description>
				<content:encoded><![CDATA[<p>WordPress und Plugins sind hinreichend bekannt und beliebt, bringen sie doch den Inhaber des Blogs in die Lage, das Blog an eigene Bedürfnisse recht einfach zu verändern und an eigenen Anforderungen anzupassen. Weniger bekannt sind <em>Dropins</em>.</p>
<p>WordPress erlaubt das Ersetzen diverse Funktionen unter anderem mit den sogenannten Dropins. Die Liste der Möglichkeiten ist nicht sonderlich groß und doch wenig dokumentiert. Insbesondere auf den Ersatz des Cache um Cache-Möglichkeiten des Servers zu nutzen, greife ich oft zurück. Dabei insbesondere APC und Memcache. Aber auch die Anpassung von Uploads, Permalinks und ähnliches sind ein typisches Scenario von Dropins.</p>
<p>Die Masse der Plugins müssen im WP Content Ordner abgelegt werden. Im Standard ist dies der Ordner <code>wp-content</code> oder er ist via Constant <code>WP_CONTENT_DIR</code> bzw. die URL in <code>WP_CONTENT_URL</code> definiert.<br />
Beispiel:</p>
<pre><code class="php">
// Custom content directory
define( 'WP_CONTENT_DIR',  dirname( __FILE__ ) . '/wp-content' );
define( 'WP_CONTENT_URL',  'http://' . $_SERVER['HTTP_HOST'] . '/wp-content' );
</code></pre>
<p>Dieses Vorgehen nutze ich beispielsweise in meiner Entwicklungsumgebung oder auch bei Kunden, da ich so bspw. auf Plugins via FTP getrennt zugreifen kann. Näheres und weitere Lösungen dazu findet man in meinem <a href="https://github.com/bueltge/WordPress-Starter">Starter auf Github</a>.</p>
<p>Einzig Dropins, die mit dem Sprachschlüssel geladen werden, liegen nicht direkt in diesem Ordner, sondern im Standard in <code>/wp-content/languages</code>. Alternativ kann der Ordner via Konstante <code>WP_LANG_DIR</code> definiert werden.<br />
Das Dropin für den deutschen Schlüssel folgt diesen Weg, nähres im <a href="https://github.com/bueltge/de_DE.php">Repo des Dropins</a> zu finden.</p>
<p>Im Backend werden Dropins seit Version 3.0 von WordPress gelistet, allerdings nur die folgenden in der Tabelle und nicht das Dropin zum Sprachschlüssel. Ebenso kann mann es nicht via backend de-/aktivieren, was in einigen Fällen die Lösung via klassischem Plugin bevorzugt.<br />
<img src="http://bueltge.de/wp-content/images/drop-ins-plugins.png" alt="" title="drop-ins-plugins" class="aligncenter size-full wp-image-1457" /></p>
<p>Im folgenden daher eine Tabelle alle Dropins, die ich kenne bzw. gefunden habe. Die möglichen Dropins werden über die Funktion <code>_get_dropins()</code> zurück gegeben. </p>
<table>
<tr>
<th>Datei</th>
<th>Type des Dropin</th>
<th>Aktiv wenn</th>
<th>Context</th>
</tr>
<tr>
<td><code>advanced-cache.php</code></td>
<td>Erweiterter bzw. Alternativer Cache</td>
<td>Konstante <code>WP_CACHE</code> ist TRUE</td>
<td>Single &#038; Multisite Installation</td>
</tr>
<tr>
<td><code>db.php</code></td>
<td>Eigene Databank Klasse</td>
<td>Immer</td>
<td>Single &#038; Multisite Installation</td>
</tr>
<tr>
<td><code>db-error.php</code></td>
<td>Eigene Datenbank Fehler Meldung</td>
<td>Beim DB Fehler</td>
<td>Single &#038; Multisite Installation</td>
</tr>
<tr>
<td><code>install.php</code></td>
<td>Eigene Installationsroutine</td>
<td>Bei der Installation</td>
<td>Single &#038; Multisite Installation</td>
</tr>
<tr>
<td><code>maintenance.php</code></td>
<td>Eigene Wartungsmeldung</td>
<td>Bei Updates, Wartung</td>
<td>Single &#038; Multisite Installation</td>
</tr>
<tr>
<td><code>object-cache.php</code></td>
<td>Externer Object Cache</td>
<td>Immer</td>
<td>Single &#038; Multisite Installation</td>
</tr>
<tr>
<td><code>sunrise.php</code></td>
<td>Bevor die WP Multisite Installation lädt</td>
<td>Wenn Konstante <code>SUNRISE</code> gesetzt</td>
<td>Multisite Installation</td>
</tr>
<tr>
<td><code>blog-deleted.php</code></td>
<td>Eigene Meldung, wenn ein Blog gelöscht wird</td>
<td>Wenn ein Blog gelöscht wird</td>
<td>Multisite Installation</td>
</tr>
<tr>
<td><code>blog-inactive.php</code></td>
<td>Eigene Meldung, wenn ein Blog inaktiv gesetzt wird</td>
<td>Wenn ein Blog inaktiv wird</td>
<td>Multisite Installation</td>
</tr>
<tr>
<td><code>blog-suspended.php</code></td>
<td>Eigene Meldung, wenn ein Blog eingestellt wird</td>
<td>Wenn ein Blog als Archiv oder als Spam markiert wird</td>
<td>Multisite Installation</td>
</tr>
<tr>
<td><code>$locale.php</code></td>
<td>Funktionen bei aktivem Sprachschlüssel</td>
<td>Wenn Sprachschlüssel in Konstante <code>WP_LANG</code> gesetzt</td>
<td>Single &#038; Multisite Installation</td>
</tr>
</table>
<hr />
<p><img src="http://bueltge.de/favicon.ico" alt="bueltge.de Favicon"/> <small>&copy; <a href="http://bueltge.de/">Frank B&uuml;ltge</a>, All rights reserved / Alle Rechte vorbehalten. (ID: 6e8b33de4342c4f2ca76b245199aeee8)</small></p>
<p>Danke für das Abonnieren meines <strong><a href="http://bueltge.de/feed/">Feed</a></strong>! Inhalt gefällt? <a href="http://bueltge.de/wunschliste/" title="Wunschliste">Danke sagen</a> &middot; <a href="http://bueltge.de/wordpress-dropins/1456/#respond" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/wordpress-dropins/1456/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/wp-content/images/drop-ins-plugins-470x286.png" />
		<media:content url="http://bueltge.de/wp-content/images/drop-ins-plugins.png" medium="image">
			<media:title type="html">drop-ins-plugins</media:title>
			<media:thumbnail url="http://bueltge.de/wp-content/images/drop-ins-plugins-470x286.png" />
		</media:content>
		<media:content url="http://bueltge.de/favicon.ico" medium="image">
			<media:title type="html">bueltge.de Favicon</media:title>
		</media:content>
	</item>
		<item>
		<title>Nebelgeister</title>
		<link>http://bueltge.de/nebelgeister/1451/</link>
		<comments>http://bueltge.de/nebelgeister/1451/#comments</comments>
		<pubDate>Mon, 22 Oct 2012 07:05:27 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Bike]]></category>
		<category><![CDATA[Kommentar]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=1451</guid>
		<description><![CDATA[Aus dem Alltag, der so oft bewegt und nicht genannt wird. "Bike2Work" ist mein Alltag und das Wetter macht den Unterschied, so wie heute in ganz besonderer Form - oder ich bin einfach nur sensibler oder anders als sonst ;)]]></description>
				<content:encoded><![CDATA[<p>Eigentlich ein Morgen wie immer – gut, es ist Montag und damit doch nicht wie immer. Das Wochenende hat uns verwöhnt, Indian Summer in Deutschland und das Gemüt ist auf Hochtouren. Heute morgen ist alles anders. Die Sichtweite ist extrem kurz, die Beine schwer und die <a title="Strava Tracking" href="http://app.strava.com/runs/25682556">Kilometer</a> der letzten Tage stecken noch im Körper.</p>
<p>Die Fahrt ist spannend, alles anders und die Natur überrascht wieder aufs neue. Ich sitze mit einer gewissen Anspannung im Sattel, immer bereit zum Sprung wenn ein Nebelgeist oder die Moorleiche meinen Weg kreuzt. Die gelben Gläser der Schutzbrille, die sonst der Oberflächenvergrößerung und zur Aufhellung des Gemütes dienen, können nicht helfen. Die Fahrt in das ungewisse Grau steht an.<br />
<a href="http://bueltge.de/wp-content/images/img_20121022_075049.jpg"><img class="aligncenter size-medium wp-image-1452" title="IMG_20121022_075049" src="http://bueltge.de/wp-content/images/img_20121022_075049-640x480.jpg" alt="" /></a><br />
Auf das wir das Wetter nie beeinflussen können. Eines der wenigen Überraschungen die wir noch haben im Alltag …<br />
<hr />
<p><img src="http://bueltge.de/favicon.ico" alt="bueltge.de Favicon"/> <small>&copy; <a href="http://bueltge.de/">Frank B&uuml;ltge</a>, All rights reserved / Alle Rechte vorbehalten. (ID: 6e8b33de4342c4f2ca76b245199aeee8)</small></p>
<p>Danke für das Abonnieren meines <strong><a href="http://bueltge.de/feed/">Feed</a></strong>! Inhalt gefällt? <a href="http://bueltge.de/wunschliste/" title="Wunschliste">Danke sagen</a> &middot; <a href="http://bueltge.de/nebelgeister/1451/#respond" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/nebelgeister/1451/feed/</wfw:commentRss>
		<slash:comments>19</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/wp-content/images/img_20121022_075049-470x470.jpg" />
		<media:content url="http://bueltge.de/wp-content/images/img_20121022_075049-980x450.jpg" medium="image">
			<media:title type="html">IMG_20121022_075049</media:title>
			<media:thumbnail url="http://bueltge.de/wp-content/images/img_20121022_075049-470x470.jpg" />
		</media:content>
		<media:content url="http://bueltge.de/favicon.ico" medium="image">
			<media:title type="html">bueltge.de Favicon</media:title>
		</media:content>
	</item>
		<item>
		<title>WordPress Customizer</title>
		<link>http://bueltge.de/wordpress-customizer/1449/</link>
		<comments>http://bueltge.de/wordpress-customizer/1449/#comments</comments>
		<pubDate>Fri, 19 Oct 2012 10:42:40 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[Themes]]></category>
		<category><![CDATA[Tipps]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Theme]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=1449</guid>
		<description><![CDATA[Der WordPress Customizer - Theme-Einstellungen im Frontend einfach realisieren mit Hilfe des Standards.]]></description>
				<content:encoded><![CDATA[<p>Der WordPress Customizer - Theme-Einstellungen im Frontend einfach realisieren mit Hilfe des Standards.<br />
Der Customizer ist seit WordPress Version 3.4 im Core und soll Theme Entwickler unterstützen, am Theme diverse Optionen zu ermöglichen. Dabei steht diese Möglichkeit im Standard zur Verfügung, wird von diversen Modulen wie Background und Header-Image unterstützt und kann nach Bedarf erweitert werden.</p>
<p>Das Thema Anpassen des Themes im Frontend von WordPress ist nicht erst seit WordPress 3.4 eine Anforderung, diese Ideen und diverse Lösungen gibt seit ewigen Zeiten. Wobei hier klar die Trennung zu ziehen ist, wer ist die Zielgruppe und wie flexibel möchte man diese Anpassungen gestalten.</p>
<p>Im folgenden kleinem Video zeige ich kurz, wie das ganze aussehen kann. Dabei habe ich diverse Felder eingebaut, die üblicherweise Verwendung finden und diverse Fragen im Coding ergeben. Ebenso ist eine eigene Klasse als Erweiterung des Customizers eingeflossen, zur Nutzung von textareas, um auch dazu ein Beispiel zu sehen.</p>
<p><iframe src="http://player.vimeo.com/video/51533540" width="424" height="360" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe></p>
<p>Zum <a href="http://wpcamp.de/">WordPress Camp in Berlin</a> am letzten Wochenende habe ich dazu auf Anfrage eine Session gehalten und versucht das Thema etwas näher zu bringen. Gefühlt - das Thema scheint recht neu, nur wenige setzen sich damit auseinander. Vermutlich auch dem geschuldet, dass es bestehenden Lösungen gibt und es nun darauf ankommt, ob sich der Standard durchsetzen wird. Vor- und Nachteile gibt es in jedem Umfeld, auch diese habe ich <a href="http://bueltge.de/wordpress-customizer/?full#Benefits">etwas beleuchtet</a>.</p>
<p>Darum verweise ich hier auch auf die Slides zur Session "<a href="http://bueltge.de/wordpress-customizer" title="The Customizer - Slides">The Customizer</a>", die mir in erster Linie als Basis für die linke Gehirnhälfte dienen und mein gesprochenes Wort untermauern sollen.<br />
<a href="http://bueltge.de/wordpress-customizer"><img src="http://bueltge.de/wp-content/images/the-customizer-wordpress-themes-gestalten-640x406.png" alt="" title="The Customizer    WordPress Themes gestalten" class="aligncenter size-medium wp-image-1450" /></a><br />
Insofern könnten Fragen entstehen oder offen bleiben. Ich möchte dabei aber ermuntern, schaut euch den Code im <a href="https://github.com/bueltge/Documentation" title="Github Repo">Referenzprojekt</a> dazu an und ich denke, dass man damit mehr Lernen kann. Sollte es Fehler, Hinweise und Ideen geben, so nutzt sehr gerne die vielfältigen Möglichkeiten von Github, sei es via Issue oder einem Fork und diversen Änderungen im Code.</p>
<p>Trotzdem können hier gern in den Kommentaren Hinweise und Wünsche hinterlegt werden, so dass ich auf diverse Punkte eingehe und in separate Artikel ablege. Zu <a href="http://bueltge.de/wordpress-customizer/?full#CustomControls">Custom Functions</a> könnte ich mir dies bspw. vorstellen; dazu sollten aber die Grundlagen der Nutzung des Customizer bekannt sein und ggf. will man dazu auch mehr wissen. </p>
<hr />
<p><img src="http://bueltge.de/favicon.ico" alt="bueltge.de Favicon"/> <small>&copy; <a href="http://bueltge.de/">Frank B&uuml;ltge</a>, All rights reserved / Alle Rechte vorbehalten. (ID: 6e8b33de4342c4f2ca76b245199aeee8)</small></p>
<p>Danke für das Abonnieren meines <strong><a href="http://bueltge.de/feed/">Feed</a></strong>! Inhalt gefällt? <a href="http://bueltge.de/wunschliste/" title="Wunschliste">Danke sagen</a> &middot; <a href="http://bueltge.de/wordpress-customizer/1449/#respond" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/wordpress-customizer/1449/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/wp-content/images/the-customizer-wordpress-themes-gestalten-470x470.png" />
		<media:content url="http://bueltge.de/wp-content/images/the-customizer-wordpress-themes-gestalten-980x450.png" medium="image">
			<media:title type="html">The Customizer    WordPress Themes gestalten</media:title>
			<media:thumbnail url="http://bueltge.de/wp-content/images/the-customizer-wordpress-themes-gestalten-470x470.png" />
		</media:content>
		<media:content url="http://bueltge.de/favicon.ico" medium="image">
			<media:title type="html">bueltge.de Favicon</media:title>
		</media:content>
	</item>
		<item>
		<title>Projekt FiveSpeed: Review</title>
		<link>http://bueltge.de/projekt-fivespeed-review/1443/</link>
		<comments>http://bueltge.de/projekt-fivespeed-review/1443/#comments</comments>
		<pubDate>Sun, 07 Oct 2012 08:36:59 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Bike]]></category>
		<category><![CDATA[Fahrrad]]></category>
		<category><![CDATA[FiveSpeed]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=1443</guid>
		<description><![CDATA[Über eine Leidenschaft, ein Rad was ich von der ersten Idee an aufgebaut habe und noch immer mag. Einige Hintergründe und Informationen zum aktuellen Stand und was ich von den einzelnen Teilen nach rund 2000km halte.]]></description>
				<content:encoded><![CDATA[<p>Ende April diesen Jahres war der erste Entwurf, <a href="http://bueltge.de/projekt-five-speed/1365/">hier nachzulesen</a> und bebildert, nutzbar und ein langer Wunsch wurde Wirklichkeit, das FiveSpeed ging auf die Straße und begleitet mich seit dem fast jeden Tag. Einige Leute wollten einen Review, etwas an Infos und einen Rückblick, was ist gut und was würde ich ggf. anders machen. Hier ist er nun, der Review zum FiveSpeed.<br />
<a href="http://bueltge.de/wp-content/images/img_20121005_190358.jpg"><img src="http://bueltge.de/wp-content/images/img_20121005_190358-640x480.jpg" alt="FiveSpeed" title="Schnellschuss am Abend" class="alignnone size-medium wp-image-1447" /></a><br />
<span id="more-1443"></span><br />
Ich liebe es die Geschwindigkeit zu spüren, ohne Hüllen und aus eigener Kraft; besonders die Beschleunigung und das Brennen in den Beinen mag ich, es zeigt mir, dass ich lebe und ich spüre das Leben. Insofern war der Schritt zu einem 28er konsequent und lohnend. Bisher war ich grundsätzlich auf 26ern unterwegs; keine Straßentouren, immer im Gelände. Mit dem FiveSpeed änderte sich dies, was in erster Linie dem Weg an die Arbeit geschuldet war. Dafür habe ich es aufgebaut. Ich fahre täglich, 20km in jede Richtung und habe fast nur Asphalt unter mir und wenig Kampfzonen mit anderen Verkehrsteilnehmern. Ich suche die auch nicht, aber sie bieten sich ab und an. Dabei ist Fairness wichtig, trotzdem kann man dabei Spaß entwickeln und die eigene Kraft spüren. Darum ist es nicht ungewöhnlich, dass ich bis heute keine "Genusstour" mit diesem Rad gefahren bin; immer auf Speed. Ich liebe es diverse Leute zu überholen, den Wind beim vorbei ziehen und die schnelle aktive Reaktion zu nutzen.</p>
<p>Dafür ist das Rad super, schnelle Manöver; ein schmaler Lenker gibt mir die Freiheit eine Lücke zu finden und im Wind zu stehen. Die wenigen Gänge haben große Nachteile beim "rund" treten, machen es aber effektiv und einfach. Auf größeren Touren, 100 &#8211; 200km, sind fünf Gänge wenig; entweder hohe Trittfrequenz oder schwerer Tritt, dazwischen gibt es nicht viel. Die feinen Abstufungen des Rennrad gibt es nicht; alles ist die Kraft der Beine und des Kopfes. Trotzdem kann ich sagen, Touren machen Spaß. Ab und an kann ich mich daran gewöhnen. In der noch immer recht neuen Heimat gibt es die Möglichkeit lange Touren zu fahren und wenig Kontakt zu Autos zu haben, so dass man sich auf das Rad konzentrieren kann. Trotzdem sollte man diese Art des Aufbaus nicht mit einem klassischen Rennrad vergleichen und man wird als gewohnter Rennradfahrer die Gänge vermissen. </p>
<p><a href="http://bueltge.de/wp-content/images/img_20121002_080444.jpg"><img src="http://bueltge.de/wp-content/images/img_20121002_080444-640x853.jpg" alt="Der Schatten, ich schlage ihn doch nie" title="Der Schatten, ich schlage ihn doch nie" class="aligncenter size-medium wp-image-1445" /></a></p>
<p>An der Ampel gilt es die Gänge im Auge zu haben. Das vergessen "Runter schalten" führt dazu, dass man beim Antritt den Blick der Bahnradfahrer imitiert und die Oberschenkel schnell sauer werden. Aber hier kann man mit dieser Nabe etwas Abhilfe schaffen; schalten im Stehen und das Rückwärts treten reichen um den Gang zu wechseln. </p>
<p><a href="http://bueltge.de/wp-content/images/img_20121002_082333.jpg"><img src="http://bueltge.de/wp-content/images/img_20121002_082333-640x480.jpg" alt="On the road" title="On the road" class="aligncenter size-medium wp-image-1444" /></a></p>
<p>Die Wahl zur Nabenschaltung habe ich bisher nicht bereut; sehr pflegeleicht. Nach Außen keine störenden Teile in der Optik. Ein angenehmes Gewicht &#8211; Sprünge sind wunderbar machbar. Ich muss recht viele Bordsteinkanten hoch und runter und das Handling ist nicht wie beim 26er o.ö. &#8211; machbar; der schmale Lenker ist dabei nicht förderlich, auch nicht die Haltung, aber es geht mit etwas Gewöhnung gut und sitzt nun.<br />
Die Entscheidung zu den MTP Pedalen war dabei ebenso förderlich; die fahre ich auf allen Bikes, das Händling kennt der Körper im Schlaf und auch der Notabsprung klappt damit gut. Auch hier bin ich sehr zufrieden.<br />
Einzig das Einstellen der Schaltung ist nicht einfach. Viel Feingefühl gehört dazu, am besten beim Fahren fühlen, halten, nachstellen. Jeder Millimeter macht etwas aus und die fehlende Sicht auf das Schalten macht die Einstellung in der Werkstatt schwer. Aber etwas Gefühl und das Nachstellen beim Dehnen des Bowdenzug ist schnell unterwegs erledigt.</p>
<p>Die Fender sind spartanisch und lieber würde ich ohne fahren, schon wegen der Optik. Aber sie bringen etwas, sie schützen mich insbesondere in der Front und im Rückenbereich vor Feuchtigkeit, kein nasser Hintern mehr. Aber man muss wissen, dass das Vorderrad trotzdem Wasser abgibt, die Schuhe sind durch, das Schienbein auch. Also keine Fender für den Anzug zur Arbeit; eine Wechselkleidung oder Überzeug ist wichtig.</p>
<p>Komm zum Schluss &#8230; So weit so gut; aktuell kann ich nicht klagen. Es gibt kein Part, was ich nicht wieder so bauen würde. Die Campagnolo Parts sind pure Leidenschaft, dass können andere günstiger und ebenso gut; aber eben nicht für mich und dieses Rad. Die Nabenschaltung ist Geschmackssache; aber ich mag dieses Purismus und trotzdem den Komfort der fünf Gänge; ein wunderbarer Kompromiss. Die Räder haben bisher alles gegeben; keine Sorgen, keine Achten o.ä. und die Speichern sitzen fest. Die Form des Lenker entspricht meinem Stil, sie könnten maximal einem Bullhorn weichen; einen Rennlenker vermisse ich nicht. Ein Rad ist für mich mehr als das Vorankommen, pure Leidenschaft in mechanische Teile gesteckt, die ohne die Kraft und den Geist des Fahrers keinen Wert haben.</p>
<p>Eine neue Leidenschaft habe ich auch schon gefunden, ein Folgeprojekt &#8211; aber dazu vielleicht ein andermal.<br />
<hr />
<p><img src="http://bueltge.de/favicon.ico" alt="bueltge.de Favicon"/> <small>&copy; <a href="http://bueltge.de/">Frank B&uuml;ltge</a>, All rights reserved / Alle Rechte vorbehalten. (ID: 6e8b33de4342c4f2ca76b245199aeee8)</small></p>
<p>Danke für das Abonnieren meines <strong><a href="http://bueltge.de/feed/">Feed</a></strong>! Inhalt gefällt? <a href="http://bueltge.de/wunschliste/" title="Wunschliste">Danke sagen</a> &middot; <a href="http://bueltge.de/projekt-fivespeed-review/1443/#respond" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/projekt-fivespeed-review/1443/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/wp-content/images/img_20121005_190358-470x470.jpg" />
		<media:content url="http://bueltge.de/wp-content/images/img_20121005_190358-980x450.jpg" medium="image">
			<media:title type="html">Schnellschuss am Abend</media:title>
			<media:thumbnail url="http://bueltge.de/wp-content/images/img_20121005_190358-470x470.jpg" />
		</media:content>
		<media:content url="http://bueltge.de/wp-content/images/img_20121002_080444-980x450.jpg" medium="image">
			<media:title type="html">ich schlage ihn doch nie</media:title>
			<media:thumbnail url="http://bueltge.de/wp-content/images/img_20121002_080444-470x470.jpg" />
		</media:content>
		<media:content url="http://bueltge.de/wp-content/images/img_20121002_082333-980x450.jpg" medium="image">
			<media:title type="html">On the road</media:title>
			<media:thumbnail url="http://bueltge.de/wp-content/images/img_20121002_082333-470x470.jpg" />
		</media:content>
		<media:content url="http://bueltge.de/favicon.ico" medium="image">
			<media:title type="html">bueltge.de Favicon</media:title>
		</media:content>
	</item>
		<item>
		<title>WordPress bloginfo-Funktion beinflussen</title>
		<link>http://bueltge.de/wordpress-bloginfo-funktion-beinflussen/1298/</link>
		<comments>http://bueltge.de/wordpress-bloginfo-funktion-beinflussen/1298/#comments</comments>
		<pubDate>Thu, 04 Oct 2012 09:43:58 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Tipps]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[Hook]]></category>
		<category><![CDATA[WP]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=1298</guid>
		<description><![CDATA[Gezielt die Inhalte der <code>get_bloginfo()</code> Funktion manipulieren ist einfach und statische Werte in Themes und Plugins sind nicht notwendig. ]]></description>
				<content:encoded><![CDATA[<p>Kleiner Tipp am Rande, da die Frage schon mehrfach auftauchte. Die <code>get_bloginfo()</code> Funktion gibt diverse Inhalte aus der Installation zurück, näheres beschreibt der <a href="http://codex.wordpress.org/Function_Reference/bloginfo">Codex</a>, inklusive aller Parameter. Nun passen die Inhalte nicht immer zur geforderten Aufgabe und auch diese Funktion besitzt einen Filter Hook, so dass man gezielt darauf eingehen kann und unter bestimmten Bedingungen anpassen kann.<br />
<span id="more-1298"></span><br />
Ein einfaches und schönes Beispiel um den Filter Hook zu verstehen.</p>
<pre><code class="php">
add_filter( 'bloginfo', 'fb_influencing_bloginfo', 10, 2 );
function fb_influencing_bloginfo( $output = '', $show = '' ) {

    if ( 'name' === $show )
        $output = 'my new name';

    return $output;
}
</code></pre>
<hr />
<p><img src="http://bueltge.de/favicon.ico" alt="bueltge.de Favicon"/> <small>&copy; <a href="http://bueltge.de/">Frank B&uuml;ltge</a>, All rights reserved / Alle Rechte vorbehalten. (ID: 6e8b33de4342c4f2ca76b245199aeee8)</small></p>
<p>Danke für das Abonnieren meines <strong><a href="http://bueltge.de/feed/">Feed</a></strong>! Inhalt gefällt? <a href="http://bueltge.de/wunschliste/" title="Wunschliste">Danke sagen</a> &middot; <a href="http://bueltge.de/wordpress-bloginfo-funktion-beinflussen/1298/#respond" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/wordpress-bloginfo-funktion-beinflussen/1298/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/favicon.ico" />
		<media:content url="http://bueltge.de/favicon.ico" medium="image">
			<media:title type="html">bueltge.de Favicon</media:title>
		</media:content>
	</item>
		<item>
		<title>Mantis Bug Tracker Plugins für BBCode und Markdown</title>
		<link>http://bueltge.de/mantis-bug-tracker-plugins-fuer-bbcode-und-markdown/1438/</link>
		<comments>http://bueltge.de/mantis-bug-tracker-plugins-fuer-bbcode-und-markdown/1438/#comments</comments>
		<pubDate>Mon, 24 Sep 2012 09:39:50 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Bug]]></category>
		<category><![CDATA[Mantis]]></category>
		<category><![CDATA[Plugin]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=1438</guid>
		<description><![CDATA[Mantis ist einer meiner Favoriten beim Tracken von Bugs bzw. beim Issue Tracking, wenn es um eigenständig gehostete Lösungen geht; insbesondere bei Kunden in geschlossenen Netzen greife ich gern auf MantisBT zurück. In der Masse arbeiten dann Endanwender damit, weniger Leute, die ihre Inhalte formatieren wollen bzw. das nötige Wissen dazu mitbringen. In der Vergangenheit <a class="moretag" href="http://bueltge.de/mantis-bug-tracker-plugins-fuer-bbcode-und-markdown/1438/">&#8594; Weiterlesen</a>]]></description>
				<content:encoded><![CDATA[<p><img src="http://bueltge.de/wp-content/images/mantis_logo_262x90.png" alt="" title="mantis_logo_262x90" class="alignleft size-full wp-image-1439" /><br />
<a href="http://www.mantisbt.org/" title="Mantis Bug Tracker Site">Mantis</a> ist einer meiner Favoriten beim Tracken von Bugs bzw. beim Issue Tracking, wenn es um eigenständig gehostete Lösungen geht; insbesondere bei Kunden in geschlossenen Netzen greife ich gern auf MantisBT zurück. In der Masse arbeiten dann Endanwender damit, weniger Leute, die ihre Inhalte formatieren wollen bzw. das nötige Wissen dazu mitbringen. In der Vergangenheit hat sich dies etwas verschoben und so war es ein Bedürfnis Code zu formatieren und wie gewohnt von anderen Plattformen aufzuhübschen. Dabei sind zwei kleine Plugins - BBCode und Markdown für MantisBT - entstanden, die ich hier gern nennen möchte und für alle, die ebenso auf Mantis setzen, als Hinweis hinterlege.<br />
<span id="more-1438"></span></p>
<h3>BBCode for MantisBT</h3>
<p>Auch wenn <abbr title="Markdown ist eine vereinfachte Auszeichnungssprache">Markdown</abbr> scheinbar immer populärer und beliebter wird, so ist <a href="http://de.wikipedia.org/wiki/BBCode"><abbr title="BBCode (von engl. Bulletin Board Code) ist eine an HTML angelehnte, jedoch vereinfachte Auszeichnungssprache, die bevorzugt für die Erstellung von Beiträgen in Webforen eingesetzt wird.">BBCode</abbr></a> auch weiterhin bekannt und gern genutzt. Darum dieses kleine Plugin, welches die Nutzung erlaubt und den Code aufhübscht,  wenn das zugehörige <a href="https://github.com/mantisbt-plugins/highlightcode" title="MantisBT Highlight Plugin">Highlighter Plugin</a> ebenso aktiv ist. Alle Informationen, Links und die jeweils aktuelle Entwicklung findet ihr im entsprechenden Repo auf Github.</p>
<p>&raquo; <a href="https://github.com/bueltge/bbcode" title="BBCode for Mantis Bug Tracker">BBCode for Mantis</a> (Download, Bugtracker, Readme)</p>
<h3>Markdown for MatisBT</h3>
<p>Für alle Markdown Liebhaber gibt es ebenso ein Plugin zur Formatierung. Auch dies unterstützt den Output so, dass das Highlighter Plugin für Mantis eingesetzt werden kann. Auch hier ist die aktuelle Entwicklung im Repo mit notwendigen Informationen und Hinweisen. Die Realisierung war vor allem so einfach durch die freie Lösung <a href="https://github.com/michelf/php-markdown/">PHP Markdown</a> von Michel Fortin, die das Parsen übernimmt, so dass man keine eigene Kraft in das Parsen stecken muss.</p>
<p>&raquo; <a href="https://github.com/bueltge/Markdown-for-MantisBT" title="Markdown for Mantis Bug Tracker">Markdown for Mantis</a> (Download, Bugtracker, Readme)</p>
<p>Hinweise; Bugreports und Forks sind wie immer willkommen.<br />
<hr />
<p><img src="http://bueltge.de/favicon.ico" alt="bueltge.de Favicon"/> <small>&copy; <a href="http://bueltge.de/">Frank B&uuml;ltge</a>, All rights reserved / Alle Rechte vorbehalten. (ID: 6e8b33de4342c4f2ca76b245199aeee8)</small></p>
<p>Danke für das Abonnieren meines <strong><a href="http://bueltge.de/feed/">Feed</a></strong>! Inhalt gefällt? <a href="http://bueltge.de/wunschliste/" title="Wunschliste">Danke sagen</a> &middot; <a href="http://bueltge.de/mantis-bug-tracker-plugins-fuer-bbcode-und-markdown/1438/#respond" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/mantis-bug-tracker-plugins-fuer-bbcode-und-markdown/1438/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/wp-content/images/mantis_logo_262x90.png" />
		<media:content url="http://bueltge.de/wp-content/images/mantis_logo_262x90.png" medium="image">
			<media:title type="html">mantis_logo_262x90</media:title>
		</media:content>
		<media:content url="http://bueltge.de/favicon.ico" medium="image">
			<media:title type="html">bueltge.de Favicon</media:title>
		</media:content>
	</item>
		<item>
		<title>Kommentar &amp; Motivation</title>
		<link>http://bueltge.de/kommentar-motivation/1436/</link>
		<comments>http://bueltge.de/kommentar-motivation/1436/#comments</comments>
		<pubDate>Thu, 20 Sep 2012 20:27:26 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Zitat]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=1436</guid>
		<description><![CDATA[Die Welt dreht sich, egal ob man kommentiert oder nicht. Trotzdem - ich vermisse Kommentare in der Welt der Blogs und hinterlasse ein kleines Geschreibsel aus dem Kopf zu diesem Thema.]]></description>
				<content:encoded><![CDATA[<p>... ist mein Antrieb, was ich auch tue. Die Motivation kommt aus unterschiedlichen Quellen und ab und an versiegen auch welche davon. Eine Quelle stirbt aktuell in der Webwelt, zumindest in meiner Welt &#8211; Kommentare zu Artikeln.</p>
<p>Ich vermisse sie, die kleinen Spitzen und Ergänzen am Ende eines Artikels. Die Bereicherungen für den Autor und die Leserschaft. Die daraus entstehenden Freundschaften, Berufungen und beruflichen Verbindungen. Wo sind sie hin? Zum Teil verlagern sie sich, sie gehen andere Wege. Sie verlassen das Elternhaus, gehen andere Verbindungen ein und kommen nur selten zum Autor zurück. Die Diskussion kann es trotzdem geben, nur eben anderer Stelle, an einem anderen Ort und nicht selten kennt der Autor des Artikels diesen Ort nicht und verliert aus meiner Sicht damit einen wichtigen Teil des Schreibens &#8211; Motivation durch die Leserschaft und deren Kommentare.</p>
<blockquote cite="http://de.wikipedia.org/wiki/Motivation"><p>Motivation steigert die Handlungsbereitschaft und ist somit eine „Triebkraft“ für Verhalten.</p>
<footer><a href="http://de.wikipedia.org/wiki/Motivation">wikipedia</a></footer>
</blockquote>
<p>Führt es zum Blogsterben? Wohl nicht, das nachwachsende Element ist groß und neue Autoren kommen und gehen. Die Welt dreht sich auch ohne uns, das Netz ebenso und die Geschwindigkeit wird durch Restriktionen nicht aufzuhalten sein. Gleiches gilt für die Artikel und die Diskussion darum, es gibt sie, wo auch immer und wie inhaltsbezogen. Trotzdem &#8211; ich vermisse euch.<br />
<hr />
<p><img src="http://bueltge.de/favicon.ico" alt="bueltge.de Favicon"/> <small>&copy; <a href="http://bueltge.de/">Frank B&uuml;ltge</a>, All rights reserved / Alle Rechte vorbehalten. (ID: 6e8b33de4342c4f2ca76b245199aeee8)</small></p>
<p>Danke für das Abonnieren meines <strong><a href="http://bueltge.de/feed/">Feed</a></strong>! Inhalt gefällt? <a href="http://bueltge.de/wunschliste/" title="Wunschliste">Danke sagen</a> &middot; <a href="http://bueltge.de/kommentar-motivation/1436/#respond" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/kommentar-motivation/1436/feed/</wfw:commentRss>
		<slash:comments>46</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/favicon.ico" />
		<media:content url="http://bueltge.de/favicon.ico" medium="image">
			<media:title type="html">bueltge.de Favicon</media:title>
		</media:content>
	</item>
		<item>
		<title>Vorgaben von WordPress Editor Buttons ändern</title>
		<link>http://bueltge.de/vorgaben-von-wordpress-editor-buttons-aendern/1431/</link>
		<comments>http://bueltge.de/vorgaben-von-wordpress-editor-buttons-aendern/1431/#comments</comments>
		<pubDate>Sun, 09 Sep 2012 15:53:41 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Tipps]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=1431</guid>
		<description><![CDATA[Nicht jedem Anwender gefallen die Vorgaben, die diverse Buttons im Editor von WordPress ausgeben. Aktuell kann man darauf nicht direkt via Filter zugreifen. Eine Alternative ist der Eingriff via Javascript und so lassen sich diverse Anforderungen schnell erfüllen und ggf. die Arbeit der Anwender erleichtern.]]></description>
				<content:encoded><![CDATA[<p>Nicht jedem Anwender gefallen die Vorgaben, die diverse Buttons im Editor von WordPress ausgeben. Aktuell kann man darauf nicht direkt via Filter zugreifen. Eine Alternative ist der Eingriff via Javascript und so lassen sich diverse Anforderungen schnell erfüllen und ggf. die Arbeit der Anwender erleichtern.<br />
<span id="more-1431"></span><br />
Im folgenden ein kleines Beispiel für den Link-Button im Editor und im Screenshot zu sehen, die geänderten Inhalte bzw. Texte.</p>
<p><img src="http://bueltge.de/wp-content/images/wp-link-aendern.png" alt="" title="wp-link-aendern" class="aligncenter size-full wp-image-1432" /></p>
<pre><code class="php">
&lt;?php
/**
 * Plugin Name: Change Button Content
 * Version:     0.0.1
 * Plugin URI:  http://bueltge.de/?p=1431
 * Description: Change Link button
 * Author:      Frank Bültge
 * Author URI:  http://bueltge.de/
 */

add_action( 'admin_footer-post.php',     'fb_admin_footer', 9999 );
add_action( 'admin_footer-post-new.php', 'fb_admin_footer', 9999 );
function fb_admin_footer() {
	?&gt;
&lt;script type=&quot;text/javascript&quot;&gt;
	( function( $ ) {
		
		if ( typeof wpLink == 'undefined' )
			return;
		
		wpLink.setDefaultValues = function () { 
			$('#url-field').val( '&lt;?php echo home_url( '/' ) ?&gt;' );
			$('#link-title-field').val( 'This works <img src='http://bueltge.de/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> ' );
			$('#wp-link-submit').val( 'Use this link' );
		};
	} )( jQuery );
&lt;/script&gt;
	&lt;?php
}
</code></pre>
<hr />
<p><img src="http://bueltge.de/favicon.ico" alt="bueltge.de Favicon"/> <small>&copy; <a href="http://bueltge.de/">Frank B&uuml;ltge</a>, All rights reserved / Alle Rechte vorbehalten. (ID: 6e8b33de4342c4f2ca76b245199aeee8)</small></p>
<p>Danke für das Abonnieren meines <strong><a href="http://bueltge.de/feed/">Feed</a></strong>! Inhalt gefällt? <a href="http://bueltge.de/wunschliste/" title="Wunschliste">Danke sagen</a> &middot; <a href="http://bueltge.de/vorgaben-von-wordpress-editor-buttons-aendern/1431/#respond" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/vorgaben-von-wordpress-editor-buttons-aendern/1431/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/wp-content/images/wp-link-aendern-470x395.png" />
		<media:content url="http://bueltge.de/wp-content/images/wp-link-aendern.png" medium="image">
			<media:title type="html">wp-link-aendern</media:title>
			<media:thumbnail url="http://bueltge.de/wp-content/images/wp-link-aendern-470x395.png" />
		</media:content>
		<media:content url="http://bueltge.de/favicon.ico" medium="image">
			<media:title type="html">bueltge.de Favicon</media:title>
		</media:content>
	</item>
		<item>
		<title>Der Vorteil am Kind-Sein ist</title>
		<link>http://bueltge.de/der-vorteil-am-kind-sein-ist/1430/</link>
		<comments>http://bueltge.de/der-vorteil-am-kind-sein-ist/1430/#comments</comments>
		<pubDate>Sun, 09 Sep 2012 11:13:20 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Linktipp]]></category>
		<category><![CDATA[Zitat]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=1430</guid>
		<description><![CDATA[Der Vorteil am Kind-Sein ist, dass die Welt ohne Vorurteile startet. Der Nachteil ist, dass dieser Zustand nur begrenzt anhält. Thinkthrice &#169; Frank B&#252;ltge, All rights reserved / Alle Rechte vorbehalten. (ID: 6e8b33de4342c4f2ca76b245199aeee8) Danke für das Abonnieren meines Feed! Inhalt gefällt? Danke sagen &#183; Kommentieren]]></description>
				<content:encoded><![CDATA[<figure class="quote">
<blockquote>
<p>Der Vorteil am Kind-Sein ist, dass die Welt ohne Vorurteile startet.<br />
Der Nachteil ist, dass dieser Zustand nur begrenzt anhält.</p>
<footer><a href="http://www.thinkthrice.de/">Thinkthrice</a></footer>
</blockquote>
</figure>
<hr />
<p><img src="http://bueltge.de/favicon.ico" alt="bueltge.de Favicon"/> <small>&copy; <a href="http://bueltge.de/">Frank B&uuml;ltge</a>, All rights reserved / Alle Rechte vorbehalten. (ID: 6e8b33de4342c4f2ca76b245199aeee8)</small></p>
<p>Danke für das Abonnieren meines <strong><a href="http://bueltge.de/feed/">Feed</a></strong>! Inhalt gefällt? <a href="http://bueltge.de/wunschliste/" title="Wunschliste">Danke sagen</a> &middot; <a href="http://bueltge.de/der-vorteil-am-kind-sein-ist/1430/#respond" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/der-vorteil-am-kind-sein-ist/1430/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/favicon.ico" />
		<media:content url="http://bueltge.de/favicon.ico" medium="image">
			<media:title type="html">bueltge.de Favicon</media:title>
		</media:content>
	</item>
		<item>
		<title>Ein neues dynamisches Erscheinungsbild</title>
		<link>http://bueltge.de/ein-neues-dynamisches-erscheinungsbild/1426/</link>
		<comments>http://bueltge.de/ein-neues-dynamisches-erscheinungsbild/1426/#comments</comments>
		<pubDate>Tue, 07 Aug 2012 14:05:52 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[BarCamp]]></category>
		<category><![CDATA[generator]]></category>
		<category><![CDATA[Linktipp]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=1426</guid>
		<description><![CDATA[... gibt es diesmal auf der Site zu push.conference zu erleben. Vor geraumer Zeit hatten einige aus dem Team etwas ähnliches erstellt und ich <a href="http://bueltge.de/mein-dynamisches-erscheinungsbild/1211/">hatte berichtet</a>.
Das Erscheinungsbild von mir sollte euch nicht beunruhigen, leßt lieber über die Konferenz und deren Speaker. Alles nähere auf der <a href="http://push-conference.com/2012/">Site zur push.conference</a>]]></description>
				<content:encoded><![CDATA[<p>... gibt es diesmal auf der Site zu push.conference zu erleben. Vor geraumer Zeit hatten einige aus dem Team etwas ähnliches erstellt und ich <a href="http://bueltge.de/mein-dynamisches-erscheinungsbild/1211/">hatte berichtet</a>.</p>
<p><a href="http://bueltge.de/wp-content/images/push.png"><img src="http://bueltge.de/wp-content/images/push-640x378.png" alt="" title="push" class="aligncenter size-medium wp-image-1427" /></a></p>
<p>Das Erscheinungsbild von mir sollte euch nicht beunruhigen, lest lieber über die Konferenz und deren Speaker. Alles nähere auf der <a href="http://push-conference.com/2012/">Site zur push.conference</a>, welche am Freitag den 23. - Samstag den 24.November 2012 in München statt findet.</p>
<blockquote><p>push.conference is an incredible two day event on everything interactive in the heart of munich. The interdisciplinary mix of the two days bridges the gap between user experience design and interactive arts, because we firmly believe that both fields can learn a great deal from each other.</p></blockquote>
<p>Wie sieht mein Name als generative Skulptur aus? Auf der Webseite der push.conference lässt sich diese Frage mit dem <a href="http://push-conference.com/2012/generator.php">push.generator</a> explorativ beantworten. Der Skulptur-Generator wurde eigens für die Konferenz von <a href="http://www.envis-precisely.com">envis precisely</a> als individualisierbares Gestaltungselement entwickelt.</p>
<p>Die push.conference selbst hat es sich zum Ziel gesetzt, in ihren Vorträgen User Experience Design und Media Arts zusammenzuführen. Auf der jährlich stattfindenden Konferenz geben internationale Experten aus den verschiedensten Bereichen der Interactive-Branche Einblicke in ihre Arbeit und sind somit Impulsgeber für die interaktive Kreativwirtschaft.</p>
<p>Dieser Impuls spiegelt sich auch in der visuellen Identität der push.conference wieder. Die Generator-Matrix besteht aus 3x3x3 Kuben, die in Abhängigkeit der Texteingabe auf ihren Bahnen verschoben wird. Die Entfernung, um die eine Blockreihe bewegt wird, beruht wiederum auf der Häufigkeit der einzelnen Zeichen im deutschen Alphabet. Bsp: Ein "e" versetzt die Reihe um einen Block, während ein selteneres "q" einen größeren Einfluss hat. Die Position des einzelnen Buchstabens im Wort wiederum beeinflusst die Richtung in der eine Reihe verrutscht wird. So verläuft die Verschiebungen der Blockreihe zuerst auf der X- und anschließend weiter über die Y- &#038; Z- Achse. Dieser Vorgang wiederholt sich solange der Betrachter schreibt. Der Generator wurde mit Hilfe von Three.js und CoffeeScript programmiert damit er in allen modernen Browsern erlebt werden kann. </p>
<p>Auf Basis des push.generators werden in Folge auch die Sprechertrailer sowie die individuellen Namensschilder für die Gäste gestaltet werden. Diese Prozesse laufen allerdings automatisiert ab. Auf der Website selbst haben die Besucher die Möglichkeit durch Eingabe von Text selbst die Visualisierung zu beeinflussen und sich so zum Beispiel ihr eigene generative Skulptur zu erstellen.<br />
<hr />
<p><img src="http://bueltge.de/favicon.ico" alt="bueltge.de Favicon"/> <small>&copy; <a href="http://bueltge.de/">Frank B&uuml;ltge</a>, All rights reserved / Alle Rechte vorbehalten. (ID: 6e8b33de4342c4f2ca76b245199aeee8)</small></p>
<p>Danke für das Abonnieren meines <strong><a href="http://bueltge.de/feed/">Feed</a></strong>! Inhalt gefällt? <a href="http://bueltge.de/wunschliste/" title="Wunschliste">Danke sagen</a> &middot; <a href="http://bueltge.de/ein-neues-dynamisches-erscheinungsbild/1426/#respond" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/ein-neues-dynamisches-erscheinungsbild/1426/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/wp-content/images/push-470x470.png" />
		<media:content url="http://bueltge.de/wp-content/images/push-843x450.png" medium="image">
			<media:title type="html">push</media:title>
			<media:thumbnail url="http://bueltge.de/wp-content/images/push-470x470.png" />
		</media:content>
		<media:content url="http://bueltge.de/favicon.ico" medium="image">
			<media:title type="html">bueltge.de Favicon</media:title>
		</media:content>
	</item>
		<item>
		<title>Twitter oEmbed deaktiveren</title>
		<link>http://bueltge.de/twitter-oembed-deaktiveren/1421/</link>
		<comments>http://bueltge.de/twitter-oembed-deaktiveren/1421/#comments</comments>
		<pubDate>Wed, 01 Aug 2012 07:22:36 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Tipps]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Twitter]]></category>
		<category><![CDATA[WP]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=1421</guid>
		<description><![CDATA[WordPress Twitter oEmbed deaktivieren via Code Snippet, einfach und schnell, so dass der Zugriff nicht klappt.]]></description>
				<content:encoded><![CDATA[<p>Ab WordPress 3.5 gibt es im Administrationsbereich keine Optionen mehr zum Thema oEmbed. Soll oEmbed abgeschaltet werden, so muss ein Filter genutzt werden - am besten mit einem kleinen Plugin. Dieses kann im <a href="https://gist.github.com/4433308">Gist 4433308</a> geladen werden oder der folgenden Code wird von euch selbstständig genutzt.<br />
<span id="more-1421"></span></p>
<pre><code class="php">
&lt;?php
/**
 * Plugin Name: Deactivate oEmbed
 * Description: Deactivate oEmbed in WordPress 3.5 and earlier
 * Version:     0.0.1
 * Author:      Frank Bültge
 * Author URI:  http://bueltge.de/
 */
 
remove_filter( 'the_content', array( $GLOBALS['wp_embed'], 'autoembed' ), 8 );
</code></pre>
<p>Mit WordPress 3.4 kam die Integration von Twitter via oEmbed in den Core. Damit kann man einfach und unkompliziert Tweets in den Content holen, URL des Tweets genügt.<br />
Darüber ist nicht jeder glücklich und daher im folgenden ein kleiner Schnippsel, der dies deaktiviert. Welche Gründe dafür sprechen, weiß jeder, der dies deaktivieren will.<br />
<!--more--><br />
Der Code gehört in ein Plugin ausgelagert, darum auch gleich mal so abgebildet.</p>
<pre><code class="php">
&lt;?php
/**
 * Plugin Name: Remove Twitter oEmbeds
 * Plugin URI:  http://bueltge.de/?p=1421
 * Description: Disable the Twitter embeds in WP 3.4*
 * Version:     1.0.0
 * Author:      Frank Bültge
 * Author URI:  http://bueltge.de
 * License:     GPLv3
 */

// This file is not called by WordPress. We don't like that.
! defined( 'ABSPATH' ) and exit;

// works only, if the function is not active
if ( ! function_exists( 'fb_remove_twitter_embeds' ) ) {

	add_action( 'init', 'fb_remove_twitter_embeds' );
	function fb_remove_twitter_embeds() {
		
		wp_embed_unregister_handler( '#https?://(www.)?twitter.com/.+?/status(es)?/.*#i' );
	}

}
</code></pre>
<hr />
<p><img src="http://bueltge.de/favicon.ico" alt="bueltge.de Favicon"/> <small>&copy; <a href="http://bueltge.de/">Frank B&uuml;ltge</a>, All rights reserved / Alle Rechte vorbehalten. (ID: 6e8b33de4342c4f2ca76b245199aeee8)</small></p>
<p>Danke für das Abonnieren meines <strong><a href="http://bueltge.de/feed/">Feed</a></strong>! Inhalt gefällt? <a href="http://bueltge.de/wunschliste/" title="Wunschliste">Danke sagen</a> &middot; <a href="http://bueltge.de/twitter-oembed-deaktiveren/1421/#respond" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/twitter-oembed-deaktiveren/1421/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/favicon.ico" />
		<media:content url="http://bueltge.de/favicon.ico" medium="image">
			<media:title type="html">bueltge.de Favicon</media:title>
		</media:content>
	</item>
	</channel>
</rss>
