<?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] &#187; WP2.7</title>
	<atom:link href="http://bueltge.de/tag/wp27/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>Tue, 22 May 2012 20:02:25 +0000</lastBuildDate>
	<language>de-DE</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>WP Basis Theme in (x)HTML5</title>
		<link>http://bueltge.de/wp-basis-theme-in-xhtml5/984/</link>
		<comments>http://bueltge.de/wp-basis-theme-in-xhtml5/984/#comments</comments>
		<pubDate>Tue, 28 Jul 2009 13:18:48 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[CSS, xHTML, JS]]></category>
		<category><![CDATA[Themes]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[StyleSheet]]></category>
		<category><![CDATA[Theme]]></category>
		<category><![CDATA[Web 2.0]]></category>
		<category><![CDATA[Webdesign]]></category>
		<category><![CDATA[WP]]></category>
		<category><![CDATA[WP2.7]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=984</guid>
		<description><![CDATA[Ich möchte die Kosten, die dieses Blog und die kleinen Nebenprodukte verursachen gern deckeln, so dass ich keinen Aufwand in die finanziellen Kosten des Webspace stecke, sondern in die Inhalte. Daher wird es also ab jetzt die Möglichkeit geben, eine Fläche zu mieten.]]></description>
			<content:encoded><![CDATA[<p><img class="alignrightob" src="http://wpbasis.de/images/wpbasis_logo.png" alt="Logo WP Basis Theme" /><br />
Das <a href="http://wpbasis.de/">WP Basis Theme</a> erfreut sich großer Beliebtheit und die Arbeit daran wird von diversen Leuten unterstützt, sei es mit Übersetzungsarbeit, Fehlerkorrekturen, Verbesserungsvorschlägen oder Tests. Daher auch hier nochmal Danke an alle Helfer!</p>
<p>Da sich HTML5 aber schon geraume Zeit auf meiner ToDo-Liste befindet und ich ein Thema benötige um zu starten, habe ich begonnen das Basis Theme in HTML5 zu bauen, so dass WordPress direkt damit arbeiten kann. Dabei habe ich auch gleich ein Beispiel-Stylesheet beigelegt, so dass es ein Design gibt.<br />
<span id="more-984"></span><br />
Zusätzlich gibt es eine kleines Stylesheet, welches die neuen Bereiche und ihre Tags darstellt, so dass man bei einem Einstieg in HTML5 ein wenig visueller arbeiten kann. Das Stylesheet ist nicht im Code verdrahtet und kann zum Beispiel einfach und unkompliziert mit Hilfe des WebDeveloper-Toolbar hinzugefügt werden. Zu finden ist das Stylesheet in der Struktur unter <code>layout/html5areas/html5areas.css</code>. Ein Beitrag ist damit wie folgt ersichtlich.</p>
<p><img class="centered" src="http://bueltge.de/wp-content/images/wpbasis-html5/html5areas.png" alt="HTML5 visuell dargestellt" /></p>
<p>Diverse Punkte sind aktuell nur im Opera > 9.5 sichtbar. Dazu zählen alle Inhalte des Kommentar-Formulars. Dort wurde unter anderem Pflichtfelder übergeben, wenn sie durch WordPress gesetzt werden und die <code>type</code>-Attribute haben der Aufgabe bezogen ihren Wert erhalten, daher die Image-Zuordnung im Opera.</p>
<p><img class="centered" src="http://bueltge.de/wp-content/images/wpbasis-html5/form-opera.png" alt="Kommentarformular in Opera 9.6" /></p>
<h3>Arbeit mit...</h3>
<p>Als Nachschlagewerk dient mit die Übersicht des w3c und das Blog zum Thema HTML5. Leider ist die Arbeit beim Validieren aktuell nicht so einfach, da mir kein Validator bekannt ist, der lokal validieren kann. Über Tipps würde ich mich daher freuen. Für den IE liefere ich ein Script mit, welches ihm den Umgang mit diversen Elementen beibringt.</p>
<ul>
<li><a href="http://dev.w3.org/html5/spec/Overview.html">HTML 5</a></li>
<li><a href="http://html5doctor.com/">html5doctor</a></li>
<li><a href="http://html5.validator.nu/">HTML5 Validator</a></li>
<li><a href="http://remysharp.com/2009/01/07/html5-enabling-script/">HTML5 enabling script</a></li>
</ul>
<h3>Warum das alles?</h3>
<p>Ich würde mir wünschen, dass der eine oder andere mal drüber schaut, vielleicht Leute, die schon mehr mit HTML5 gearbeitet haben und tief in der Materie stecken. Rückmeldungen wären toll und vielleicht erweitert der eine oder andere das Theme um bestimmte Tags oder Elemente.</p>
<h3>Wie komme ich daran?</h3>
<p>Es gibt hier keinen Download und die Arbeit daran wird in der freien Zeit weiter gehen und daher wird es immer wieder Veränderungen geben. Aktuell stehen nur wenige Grundzüge und es soll den gleichen Stand wie das WP Basis Theme bekommen. Um sich in das Theme einzuarbeiten oder einfach mal drüber zu schauen steht ein <a href="http://code.google.com/p/wp-basis-theme/source/browse/#svn/tags/html5">Repository</a> bereit. Dort kann auch Kommentiert und diskutiert werden.</p>
<p>Der Ordner mit allen Inhalten findet sich im Bereich <a href="http://code.google.com/p/wp-basis-theme/source/browse/#svn/trunk/basis-html5">trunk/basis-html5</a> des <a href="http://code.google.com/p/wp-basis-theme/source/browse/#svn">SVN</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><a href="http://bueltge.de/feed/"><img style="border: medium none ; float: left; margin-right: 10px;" src="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" alt="Feed Icon" width="34" height="34" /></a>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/wp-basis-theme-in-xhtml5/984/#writecomment" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/wp-basis-theme-in-xhtml5/984/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
	
		<media:thumbnail url="http://wpbasis.de/images/wpbasis_logo.png" />
		<media:content url="http://wpbasis.de/images/wpbasis_logo.png" medium="image">
			<media:title type="html">Logo WP Basis Theme</media:title>
		</media:content>
		<media:content url="http://bueltge.de/wp-content/images/wpbasis-html5/html5areas.png" medium="image">
			<media:title type="html">HTML5 visuell dargestellt</media:title>
		</media:content>
		<media:content url="http://bueltge.de/wp-content/images/wpbasis-html5/form-opera.png" medium="image">
			<media:title type="html">Kommentarformular in Opera 9.6</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>
		<media:content url="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" medium="image">
			<media:title type="html">Feed Icon</media:title>
		</media:content>
	</item>
		<item>
		<title>Zähler für Kommentare, Track- und Pingbacks ab WordPress 2.7</title>
		<link>http://bueltge.de/zaehler-fuer-kommentare-track-und-pingbacks-ab-wordpress-27/878/</link>
		<comments>http://bueltge.de/zaehler-fuer-kommentare-track-und-pingbacks-ab-wordpress-27/878/#comments</comments>
		<pubDate>Tue, 03 Feb 2009 10:39:15 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Themes]]></category>
		<category><![CDATA[Tipps]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Kommentar]]></category>
		<category><![CDATA[Template]]></category>
		<category><![CDATA[Theme]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[WP]]></category>
		<category><![CDATA[WP2.7]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=878</guid>
		<description><![CDATA[Seit WordPress 2.7 gibt es eine API für den Bereich der Kommentare. Damit kann man auch den PHP-Anteil innerhalb der <code>comments.php</code> entschlacken, je nach eigenem Ermessen. <a href="http://www.wprecipes.com/how-to-number-your-comments">Jean-Baptiste</a> zeigt eine einfache Lösung, um die Kommentare zu zählen. Die Lösung sollte bekannt sein und wird quasi seit der ersten WordPress Veröffentlichung so realisiert. Wollte man dann aber einen Filter über den Zähler haben, der beispielsweise nur die Trackbacks zählt oder auch nur die Kommentare, die per Formular eingehen, dann scheitert diese Lösung. Außerdem ist das How To doch recht schmal und PHP-Laien könnten in Schwierigkeiten geraten.

Aus diesem Zusammenhang und diverser Fragen zum Thema zeige ich mal zwei einfache Funktionen, die in der <code>functions.php</code> des Themes abgelegt werden und dann willkürlich im Theme genutzt werden können. In der Regel werden sie dann also zur Ausgabe in der <code>comments.php</code> heran gezogen.]]></description>
			<content:encoded><![CDATA[<p>Seit WordPress 2.7 gibt es eine API für den Bereich der Kommentare. Damit kann man auch den PHP-Anteil innerhalb der <code>comments.php</code> entschlacken, je nach eigenem Ermessen. <a href="http://www.wprecipes.com/how-to-number-your-comments">Jean-Baptiste</a> zeigt eine einfache Lösung, um die Kommentare zu zählen. Die Lösung sollte bekannt sein und wird quasi seit der ersten WordPress Veröffentlichung so realisiert. Hinweise dazu gibt es vielfach hier im Blog und im Netz. Wollte man dann aber einen Filter über den Zähler haben, der beispielsweise nur die Trackbacks zählt oder auch nur die Kommentare, die per Formular eingehen, dann scheitert diese Lösung. Außerdem ist das How To doch recht schmal und PHP-Laien könnten in Schwierigkeiten geraten.</p>
<p>Aus diesem Zusammenhang und diverser Fragen zum Thema zeige ich mal zwei einfache Funktionen, die in der <code>functions.php</code> des Themes abgelegt werden und dann willkürlich im Theme genutzt werden können. In der Regel werden sie dann also zur Ausgabe in der <code>comments.php</code> heran gezogen.<br />
<span id="more-878"></span></p>
<pre><code>
/**
 * count for Trackback, pingback, comment, pings
 *
 * so einbinden:
 * fb_comment_type_count('ping');
 * fb_comment_type_count('comment');
 */
if ( !function_exists('fb_comment_type_count') ) {
	function fb_get_comment_type_count( $type='all', $zero = false, $one = false, $more = false, $post_id = 0) {
		global $cjd_comment_count_cache, $id, $post;
		
		if ( !$post_id )
			$post_id = $post->ID;
		if ( !$post_id )
			return;
		
		if ( !isset($cjd_comment_count_cache[$post_id]) ) {
			$p = get_post($post_id);
			$p = array($p);
			update_comment_type_cache($p);
		}
		;
		if ( $type == 'pingback' || $type == 'trackback' || $type == 'comment' )
			$count = $cjd_comment_count_cache[$post_id][$type];
		elseif ( $type == 'pings' )
			$count = $cjd_comment_count_cache[$post_id]['pingback'] + $cjd_comment_count_cache[$post_id]['trackback'];
		else
			$count = array_sum((array) $cjd_comment_count_cache[$post_id]);
		
		return apply_filters('fb_get_comment_type_count', $count);
	}
	
	// comment, trackback, pingback, pings, all
	function fb_comment_type_count( $type='all', $zero = false, $one = false, $more = false, $post_id = 0 ) {
		
		$number = fb_get_comment_type_count( $type, $zero, $one, $more, $post_id );
		
		if ( $number > 1 )
			$output = str_replace('%', number_format_i18n($number), ( false === $more ) ? __('% Comments') : $more);
		elseif ( $number == 0 )
			$output = ( false === $zero ) ? __('No Comments') : $zero;
		else // must be one
			$output = ( false === $one ) ? __('1 Comment') : $one;

		echo apply_filters('fb_comment_type_count', $output, $number);
	}
}

if ( !function_exists('fb_update_comment_type_cache') ) {
	function fb_update_comment_type_cache(&#038;$queried_posts) {
		global $cjd_comment_count_cache, $wpdb;
		
		if ( !$queried_posts )
			return $queried_posts;
		
		foreach ( (array) $queried_posts as $post )
			if ( !isset($cjd_comment_count_cache[$post->ID]) )
				$post_id_list[] = $post->ID;
		
		if ( $post_id_list ) {
			$post_id_list = implode(',', $post_id_list);
		
			foreach ( array('', 'pingback', 'trackback') as $type ) {
				$counts = $wpdb->get_results("SELECT ID, COUNT( comment_ID ) AS ccount
							FROM $wpdb->posts
							LEFT JOIN $wpdb->comments ON ( comment_post_ID = ID AND comment_approved = '1' AND comment_type='$type' )
							WHERE post_status = 'publish' AND ID IN ($post_id_list)
							GROUP BY ID");
				
				if ( $counts ) {
					if ( '' == $type )
						$type = 'comment';
					foreach ( $counts as $count )
						$cjd_comment_count_cache[$count->ID][$type] = $count->ccount;
				}
			}
		}
		
		return $queried_posts;
	}
	
	add_filter('the_posts', 'fb_update_comment_type_cache');
}
</code></pre>
<p>Sind die beiden Funktionen abgelegt und damit im Theme verfügbar, so könnte die Nutzung für die drei Formen comments, trackbacks und pingbacks zum Beispiel wie folgt aussehen.</p>
<pre><code>
if ( function_exists('wp_list_comments') ) {
	
	// WP 2.7 Kommentar Loop
	if ( have_comments() ) { ?&gt;
		
		&lt;?php if ( empty($comments_by_type['comment']) ) { ?&gt;
			&lt;h2 id=&quot;comments&quot;&gt;&lt;?php fb_comment_type_count( 'comment' ); ?&gt;&lt;/h2&gt;
			&lt;ol class=&quot;commentlist&quot;&gt;
				&lt;?php wp_list_comments( 'type=comment&amp;callback=fb_theme_comment' ); ?&gt;
			&lt;/ol&gt;
		&lt;?php } ?&gt;
	
		&lt;?php
		if ( function_exists( 'fb_comment_type_count' ) ) {
			// alternativ type pings fuer trackback + pingback
			if ( empty($comments_by_type['pingback']) ) { ?&gt;
				&lt;h2 id=&quot;pingback&quot;&gt;&lt;?php fb_comment_type_count( 'pingback', 'Keine Pingback', 'Ein Pingback', '% Pingbacks' ); ?&gt;&lt;/h2&gt;
				&lt;ol class=&quot;pingbacklist&quot;&gt;
					&lt;?php wp_list_comments('type=pingback'); ?&gt;
				&lt;/ol&gt;
			&lt;?php } ?&gt;
			
			&lt;?php
			// alternativ type pings fuer trackback + pingback
			if ( empty($comments_by_type['trackback']) ) { ?&gt;
				&lt;h2 id=&quot;trackback&quot;&gt;&lt;?php fb_comment_type_count( 'trackback', 'Keine Trackback', 'Ein Trackback', '% Trackbacks' ); ?&gt;&lt;/h2&gt;
				&lt;ol class=&quot;trackbacklist&quot;&gt;
					&lt;?php wp_list_comments('type=trackback'); ?&gt;
				&lt;/ol&gt;
			&lt;?php } 
		} ?&gt;
		
		&lt;div class=&quot;navigation nav_comments&quot;&gt;
			&lt;div class=&quot;alignleft&quot;&gt;&lt;?php previous_comments_link() ?&gt;&lt;/div&gt;
			&lt;div class=&quot;alignright&quot;&gt;&lt;?php next_comments_link() ?&gt;&lt;/div&gt;
		&lt;/div&gt;
			
	&lt;?php } else { 
		// this is displayed if there are no comments so far 
	} ?&gt;
</code></pre>
<p>Die obige Syntax zeigt nur einen Ausschnitt aus der <code>comments.php</code> und sollte daher in die jeweilige Anforderung eingepasst werden. Im <a href="http://bueltge.de/basis-theme-fuer-wordpress/411/">Basis-Theme</a> von mir ist es aktuell nicht drin, kommt aber.</p>
<p>Die obigen Bereiche können natürlich mit anderem Markup ausgestattet werden und die Klassen und IDs sind auch nur beispielhaft. Da sind die Möglichkeiten jedem überlassen und den eigenen Anforderungen anzupassen.<br />
Hinweise, Lob, Verbesserungen oder Kritik - die Kommentare stehen euch wie immer offen, auch wenn die meisten ja eher per Feed hier mitlesen.<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><a href="http://bueltge.de/feed/"><img style="border: medium none ; float: left; margin-right: 10px;" src="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" alt="Feed Icon" width="34" height="34" /></a>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/zaehler-fuer-kommentare-track-und-pingbacks-ab-wordpress-27/878/#writecomment" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/zaehler-fuer-kommentare-track-und-pingbacks-ab-wordpress-27/878/feed/</wfw:commentRss>
		<slash:comments>50</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>
		<media:content url="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" medium="image">
			<media:title type="html">Feed Icon</media:title>
		</media:content>
	</item>
		<item>
		<title>Avatare zum Standard von WordPress hinzufügen</title>
		<link>http://bueltge.de/avatare-zum-standard-von-wordpress-hinzufuegen/852/</link>
		<comments>http://bueltge.de/avatare-zum-standard-von-wordpress-hinzufuegen/852/#comments</comments>
		<pubDate>Wed, 21 Jan 2009 14:19:09 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Tipps]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Gravatar]]></category>
		<category><![CDATA[Theme]]></category>
		<category><![CDATA[WP]]></category>
		<category><![CDATA[WP2.6]]></category>
		<category><![CDATA[WP2.7]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=852</guid>
		<description><![CDATA[Avatare sind beliebt als Identifizierung und mit dem Dienst Gravatar werden diese auch weitestgehend in den unterschiedlichen Applikation zu Kommentaren genutzt. WordPress lässt dem Nutzer dabei die Möglichkeit offen einige Grundeinstellungen zu setzen und so zum Beispiel ein Standardavatar oder generiertes Avatar zu laden, wenn der Kommentierende kein Avatar besitzt. Diverse Themes haben ein Standard [...]]]></description>
			<content:encoded><![CDATA[<p>Avatare sind beliebt als Identifizierung und mit dem Dienst <a href="http://gravatar.com">Gravatar</a> werden diese auch weitestgehend in den unterschiedlichen Applikation zu Kommentaren genutzt.<br />
WordPress lässt dem Nutzer dabei die Möglichkeit offen einige Grundeinstellungen zu setzen und so zum Beispiel ein Standardavatar oder generiertes Avatar zu laden, wenn der Kommentierende kein Avatar besitzt.<br />
Diverse Themes haben ein Standard im Bauch um dieses Standardavatar passend zum Design zu setzen. Aber auch hier gibt es eine schöne Lösung via Hook, die es ermöglicht, ein Avatar der Liste im Backend hinzuzufügen und so die Auswahl recht einfach zu gestalten. Im folgenden möchte ich mit einem kurzen und einfachen Codeschnippsel zeigen, wie man 2 neue Avatare dem Array von WordPress hinzufügt.</p>
<p><img class="centered" src="http://bueltge.de/wp-content/images/wp/addavatar.png" alt="Avatar Einstellungen im Backend von WP 2.7" /><br />
<span id="more-852"></span><br />
Die kleine Funktion im Anschluss kommt in die <code>functions.php</code> des Themes und addiert 2 Avatare aus dem Ordner <code>images</code> im Theme-Verzeichnis. Dabei empfiehlt es sich, wenn die Avatare eine Größe von 60 Pixel haben, da WordPress im Dashboard der Version 2.7 beispielsweise die Größe nutzt und das Theme auch flexibel konfiguriert werden kann.</p>
<pre><code>
/**
 * add a default-gravatar to options
 */
if ( !function_exists('fb_addgravatar') ) {
	function fb_addgravatar( $avatar_defaults ) {
		$myavatar = get_bloginfo('template_directory') . '/images/avatar.gif';
		$avatar_defaults[$myavatar] = 'people';
		
		$myavatar2 = get_bloginfo('template_directory') . '/images/myavatar.png';
		$avatar_defaults[$myavatar2] = 'bueltge.de';
		
		return $avatar_defaults;
	}

	add_filter( 'avatar_defaults', 'fb_addgravatar' );
}
</code></pre>
<p>Ist nun das Theme aktiv, dann stehen die beiden neuen Avatare zur Verfügung und können mit Hilfe der Einstellungen gesetzt werden. Die Lösung lässt sich beliebig aufweiten und ebenso in allen Bereichen nutzen. Um einen Avatar innerhalb der Kommentare oder auch anderen Bereichen zu nutzen, genügt der Aufruf <code>echo get_avatar( $comment, 32 );</code>, siehe Beiträge &#8222;<a href="http://bueltge.de/wordpress-25-gravatare-einfach-nutzen/618/">WordPress 2.5: Gravatare einfach nutzen</a>&#8220; und &#8222;<a href="http://bueltge.de/autoren-gravatar-anzeigen-wordpress/636/">WP: Autoren mit Gravatar identifizieren</a>&#8220;.<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><a href="http://bueltge.de/feed/"><img style="border: medium none ; float: left; margin-right: 10px;" src="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" alt="Feed Icon" width="34" height="34" /></a>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/avatare-zum-standard-von-wordpress-hinzufuegen/852/#writecomment" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/avatare-zum-standard-von-wordpress-hinzufuegen/852/feed/</wfw:commentRss>
		<slash:comments>19</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/wp-content/images/wp/addavatar.png" />
		<media:content url="http://bueltge.de/wp-content/images/wp/addavatar.png" medium="image">
			<media:title type="html">Avatar Einstellungen im Backend von WP 2.7</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>
		<media:content url="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" medium="image">
			<media:title type="html">Feed Icon</media:title>
		</media:content>
	</item>
		<item>
		<title>Kommentare ab WordPress 2.7 formatieren</title>
		<link>http://bueltge.de/kommentare-ab-wordpress-27-formatieren/863/</link>
		<comments>http://bueltge.de/kommentare-ab-wordpress-27-formatieren/863/#comments</comments>
		<pubDate>Tue, 13 Jan 2009 00:45:41 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Themes]]></category>
		<category><![CDATA[Tipps]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[komme]]></category>
		<category><![CDATA[Kommentar]]></category>
		<category><![CDATA[Style]]></category>
		<category><![CDATA[StyleSheet]]></category>
		<category><![CDATA[Theme]]></category>
		<category><![CDATA[WP]]></category>
		<category><![CDATA[WP2.7]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=863</guid>
		<description><![CDATA[WordPress erlaubt seit Version 2.7 &#8222;Threaded Comments&#8220; zu nutzen, ohne Plugin- oder Themeerweiterung. Dazu muss das bestehende Theme die API der Kommentare unterstützen. Im Netz finden sich einige schöne Artikel dazu und das Basis-Theme von mir wird gerade vorbereitet. Noch gibt es keine Dokumentation und ohne diese will ich es nicht frei geben - bitte ein wenig Geduld.
Um nun aber die Funktion der &#8222;Threaded Comments&#8220; entsprechend darzustellen und für den Besucher ansprechend zu formatieren stehen eine ganze Reihe von Klassen zur Verfügung. Alle möglichen Zugriffe via CSS sind im folgenden gelistet und helfen dem einen oder anderen aber beim Erarbeiten des CSS.]]></description>
			<content:encoded><![CDATA[<p>WordPress erlaubt seit Version 2.7 &#8222;Threaded Comments&#8220; zu nutzen, ohne Plugin- oder Themeerweiterung. Dazu muss das bestehende Theme die API der Kommentare unterstützen. Im Netz <a href="http://www.google.de/search?q=wp_list_comments&#038;ie=utf-8&#038;oe=utf-8&#038;aq=t&#038;rls=org.mozilla:de:official&#038;client=firefox-a">finden sich einige schöne Artikel</a> dazu und das <a href="http://bueltge.de/basis-theme-fuer-wordpress/411/">Basis-Theme</a> von mir wird gerade vorbereitet. Noch gibt es keine Dokumentation und ohne diese will ich es nicht frei geben - bitte ein wenig Geduld. Dank <a href="http://andreas-isaak.de/">Andreas</a> geht es vielleicht ein wenig schneller und ich habe einen verlässlichen und fähigen Unterstützer.</p>
<p>Um nun aber die Funktion der &#8222;Threaded Comments&#8220; entsprechend darzustellen und für den Besucher ansprechend zu formatieren stehen eine ganze Reihe von Klassen zur Verfügung. Nicht alle muss man nutzen und viele entstehen auch nur durch die Unterstützung der Semantik mit Mikroformaten in WordPress.</p>
<p>Alle möglichen Zugriffe via CSS sind im folgenden gelistet und helfen dem einen oder anderen aber beim Erarbeiten des CSS und ersparen ein wenig Arbeit mit Hilfe von Firebug und co.<br />
<span id="more-863"></span></p>
<pre><code>
ol.commentlist {}
ol.commentlist li {}
ol.commentlist li.alt {}
ol.commentlist li.bypostauthor {}
ol.commentlist li.byuser {}
ol.commentlist li.comment-author-admin {}
ol.commentlist li.comment {}
ol.commentlist li.comment div.comment-author {}
ol.commentlist li.comment div.vcard {}
ol.commentlist li.comment div.vcard cite.fn {}
ol.commentlist li.comment div.vcard cite.fn a.url {}
ol.commentlist li.comment div.vcard img.avatar {}
ol.commentlist li.comment div.vcard img.avatar-32 {}
ol.commentlist li.comment div.vcard img.photo {}
ol.commentlist li.comment div.vcard span.says {}
ol.commentlist li.comment div.commentmetadata {}
ol.commentlist li.comment div.comment-meta {}
ol.commentlist li.comment div.comment-meta a {}
ol.commentlist li.comment * {} - (p, em, strong, blockquote, ul, ol, etc.)
ol.commentlist li.comment div.reply {}
ol.commentlist li.comment div.reply a {}
ol.commentlist li.comment ul.children {}
ol.commentlist li.comment ul.children li {}
ol.commentlist li.comment ul.children li.alt {}
ol.commentlist li.comment ul.children li.bypostauthor {}
ol.commentlist li.comment ul.children li.byuser {}
ol.commentlist li.comment ul.children li.comment {}
ol.commentlist li.comment ul.children li.comment-author-admin {}
ol.commentlist li.comment ul.children li.depth-2 {}
ol.commentlist li.comment ul.children li.depth-3 {}
ol.commentlist li.comment ul.children li.depth-* {}
/* * steht für die Einstellungen der Antwort-Tiefe im Backend */
ol.commentlist li.comment ul.children li.depth-10 {}
ol.commentlist li.comment ul.children li.odd {}
ol.commentlist li.even {}
ol.commentlist li.odd {}
ol.commentlist li.parent {}
ol.commentlist li.pingback {}
ol.commentlist li.pingback div.comment-author {}
ol.commentlist li.pingback div.vcard {}
ol.commentlist li.pingback div.vcard cite.fn {}
ol.commentlist li.pingback div.vcard cite.fn a.url {}
ol.commentlist li.pingback div.vcard span.says {}
ol.commentlist li.pingback div.commentmetadata {}
ol.commentlist li.pingback div.comment-meta {}
ol.commentlist li.pingback div.comment-meta a {}
ol.commentlist li.pingback * {} 
/* * steht für Tags; z.B.: p, em, strong, blockquote, ul, ol, etc. */
ol.commentlist li.pingback div.reply {}
ol.commentlist li.pingback div.reply a {}
ol.commentlist li.pingback ul.children {}
ol.commentlist li.pingback ul.children li {}
ol.commentlist li.pingback ul.children li.alt {}
ol.commentlist li.pingback ul.children li.bypostauthor {}
ol.commentlist li.pingback ul.children li.byuser {}
ol.commentlist li.pingback ul.children li.comment {}
ol.commentlist li.pingback ul.children li.comment-author-admin {}
ol.commentlist li.pingback ul.children li.depth-2 {}
ol.commentlist li.pingback ul.children li.depth-3 {}
ol.commentlist li.pingback ul.children li.depth-4 {}
ol.commentlist li.pingback ul.children li.depth-* {}
/* * steht für die Einstellungen der Antwort-Tiefe im Backend */
ol.commentlist li.pingback ul.children li.depth-10 {}
ol.commentlist li.pingback ul.children li.odd {}
ol.commentlist li.thread-alt {}
ol.commentlist li.thread-even {}
ol.commentlist li.thread-odd {}
</code></pre>
<p><cite>via <a href="http://cdharrison.com/2008/12/threaded-comments/">Chris Harrison</a></cite><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><a href="http://bueltge.de/feed/"><img style="border: medium none ; float: left; margin-right: 10px;" src="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" alt="Feed Icon" width="34" height="34" /></a>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/kommentare-ab-wordpress-27-formatieren/863/#writecomment" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/kommentare-ab-wordpress-27-formatieren/863/feed/</wfw:commentRss>
		<slash:comments>8</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>
		<media:content url="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" medium="image">
			<media:title type="html">Feed Icon</media:title>
		</media:content>
	</item>
		<item>
		<title>WordPress 2.7 Login Design anpassen</title>
		<link>http://bueltge.de/wordpress-27-login-design-anpassen/846/</link>
		<comments>http://bueltge.de/wordpress-27-login-design-anpassen/846/#comments</comments>
		<pubDate>Wed, 10 Dec 2008 00:27:12 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Themes]]></category>
		<category><![CDATA[Tipps]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[StyleSheet]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[Webdesign]]></category>
		<category><![CDATA[WP2.7]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=846</guid>
		<description><![CDATA[WordPress 2.7 steht vor der Tür und es gibt ein Update des Backend-Designs. Das sollte sich sicher rumgesprochen haben und hinzu kommt ein neuer Login-Bereich. Es wurde nur wenig geändert, aber der Anblick entspricht dem Design des neuen Backends.
Schon in der Vergangenheit habe ich beispielsweise im Artikel &#8222;<a href="http://bueltge.de/wordpress-25-und-theme-definiertes-login/617/">WordPress 2.5 und Theme-definiertes Login</a>&#8220; für das Aspassen des Deisgn an das Theme gesprochen. Aus meiner Sicht gehört es einfach zu einem Rundumpaket eines definierten Themes &#8211; ganz im Sinne eines Corporate Designs.

Ab der Version 2.7 ist damit das CSS ein wenig anders und wer den Login-Bereich ebenso anpassen möchte, dem zeige ich hier kurz wie es geht und hinterlege das CSS für ein Beispiel.]]></description>
			<content:encoded><![CDATA[<div class="contentnavi">
<h3>Mehr:</h3>
<ul>
<li><a href="http://bueltge.de/wordpress-25-und-theme-definiertes-login/617/">#1</a></li>
<li>#2</li>
<li><a href="http://bueltge.de/?p=1214">#3</a></li>
</ul>
</div>
<p>WordPress 2.7 steht vor der Tür und es gibt ein Update des Backend-Designs. Das sollte sich sicher rumgesprochen haben und hinzu kommt ein neuer Login-Bereich. Es wurde nur wenig geändert, aber der Anblick entspricht dem Design des neuen Backends.<br />
Schon in der Vergangenheit habe ich beispielsweise im Artikel &#8222;<a href="http://bueltge.de/wordpress-25-und-theme-definiertes-login/617/">WordPress 2.5 und Theme-definiertes Login</a>&#8220; für das Anpassen des Design an das Theme gesprochen. Aus meiner Sicht gehört es einfach zu einem Rundumpaket eines definierten Themes &#8211; ganz im Sinne eines Corporate Designs.</p>
<p>Ab der Version 2.7 ist damit das CSS ein wenig anders und wer den Login-Bereich ebenso anpassen möchte, dem zeige ich hier kurz wie es geht und hinterlege das CSS für ein Beispiel.</p>
<p><img class="centered" src="http://bueltge.de/wp-content/images/wp27/wp27-login.png" alt="WP 2.7 Login" /><br />
<span id="more-846"></span></p>
<h3>Stylesheet laden</h3>
<p>Um das erstellte CSS für den Login-Bereich zu laden nutze ich eine kleine Funktion, die ich in der <code>functions.php</code> des jeweiligen Themes ablege und via Hook <code>login_head</code> im Login-Head integriere. So kann ich speziell für das Theme den Login definieren und beim Umschalten eines anderen Themes wird dann das andere Login-Design gezogen.</p>
<pre><code>
// custom login for theme
// folder themes/theme_name/custom-login/
function fb_custom_login() {
	echo '&lt;link rel="stylesheet" type="text/css" href="' . get_bloginfo('template_directory') . '/custom-login/custom-login.css" /&gt;';
}
 
add_action('login_head', 'fb_custom_login');
</code></pre>
<p>Die Stylesheet-Datei heißt dabei <code>custom-login.css</code> und liegt innerhalb des Ordner <code>custom-login</code> im Ordner des Themes.</p>
<h3>Das Stylesheet</h3>
<p>Wie schon angesprochen ein kleines Beispiel, was aber die Klassen und IDs des Login-Bereich enthält und so das Anpassen ein wenig erleichtert.</p>
<pre><code>
html {
background-color: #fff;
}

#login form {
padding-top: 100px;
}
#login form .submit input {
border-color: #bcb38f !important;
color: #777 !important;
}
#login form .submit input:hover {
border-color: #bcb38f !important;
color: #bcb38f !important;
}
#login h1 {
display: none;
}
.login #nav a {
color: #777 !important;
}
.login #nav a:hover {
color: #bcb38f !important;
}

#wphead img, #wphead h1 {
display: none;
}
#wphead {
height: 100px;
}
#wphead-info {
padding-top: 27px;
}

#footer {
display: none;
}
#footer_custom {
clear: both;
text-align: center;
width: 500px;
margin: auto;
height: 100px;
}
#footer_custom .docs {
padding-top: 0px;
line-height: 100%;
}
#footer_image {
border:none;
}
</code></pre>
<p>Soweit zum Beispiel, welches nur eine Möglichkeit der Anpassung darstellt. Hierbei sind den Künsten in der Anwendung von CSS keine Grenzen gesetzt.<br />
Aus meiner Sicht in die Nutzung der <a href="http://getfirebug.com/">Firebug</a> Erweiterung für die Analyse unerlässlich und es empfiehlt sich damit zu arbeiten, wenn man diese noch nicht nutzt.<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><a href="http://bueltge.de/feed/"><img style="border: medium none ; float: left; margin-right: 10px;" src="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" alt="Feed Icon" width="34" height="34" /></a>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-27-login-design-anpassen/846/#writecomment" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/wordpress-27-login-design-anpassen/846/feed/</wfw:commentRss>
		<slash:comments>18</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/wp-content/images/wp27/wp27-login.png" />
		<media:content url="http://bueltge.de/wp-content/images/wp27/wp27-login.png" medium="image">
			<media:title type="html">WP 2.7 Login</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>
		<media:content url="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" medium="image">
			<media:title type="html">Feed Icon</media:title>
		</media:content>
	</item>
		<item>
		<title>Menu Seite ab WordPress 2.7 hinzufügen</title>
		<link>http://bueltge.de/menu-seite-ab-wordpress-27-hinzufuegen/845/</link>
		<comments>http://bueltge.de/menu-seite-ab-wordpress-27-hinzufuegen/845/#comments</comments>
		<pubDate>Mon, 08 Dec 2008 04:30:25 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Tipps]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[WP2.7]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=845</guid>
		<description><![CDATA[In einer der <a href="http://bueltge.de/wordpress-plugins-bereichern/811/">letzten Beiträge</a> habe ich für die Autoren von Plugins schon erklärt, wie ich Möglichkeiten ab Version 2.7 von WordPress nutze, um das Backend zu bereichern und an die Möglichkeiten anzupassen. Dabei kam es in den Kommentaren schon zur <a href="http://bueltge.de/wordpress-plugins-bereichern/811/#comment-296511">Frage</a>, wie man denn eine Icon für Menupunkte, Top-Level, übergeben kann. Im <a href="http://bueltge.de/wordpress-plugins-bereichern/811/#comment-296752">Kommentar</a> habe ich dabei nur sehr kurz eine Möglichkeit geschildert, die so funktioniert aber aus meiner Sicht besser und komfortabler für den User geht. Daher nun also eine ausführliche Lösung mit dem Hovereffekt für das Icon.]]></description>
			<content:encoded><![CDATA[<p><img class="alignright" src="http://bueltge.de/wp-content/images/wp27/wp27_mymenu.png" alt="Menu Icon in WordPress 2.7" /><br />
In einer der <a href="http://bueltge.de/wordpress-plugins-bereichern/811/">letzten Beiträge</a> habe ich für die Autoren von Plugins schon erklärt, wie ich Möglichkeiten ab Version 2.7 von WordPress nutze, um das Backend zu bereichern und an die Möglichkeiten anzupassen. Dabei kam es in den Kommentaren schon zur <a href="http://bueltge.de/wordpress-plugins-bereichern/811/#comment-296511">Frage</a>, wie man denn eine Icon für Menupunkte, Top-Level, übergeben kann. Im <a href="http://bueltge.de/wordpress-plugins-bereichern/811/#comment-296752">Kommentar</a> habe ich dabei nur sehr kurz eine Möglichkeit geschildert, die so funktioniert aber aus meiner Sicht besser und komfortabler für den User geht. Daher nun also eine ausführliche Lösung mit dem Hovereffekt für das Icon.<br />
<span id="more-845"></span></p>
<h3><code>add_menu_page()</code></h3>
<p>Die Funktion <code>add_menu_page()</code> existiert seit beginn von WordPress und hat nun ab Version 2.7 einen Parameter mehr &#8211; <code>$icon_url</code>.</p>
<pre><code>
add_menu_page( $page_title, $menu_title, $access_level, $file, $function = '', $icon_url = '' )
</code></pre>
<p>Dieser Parameter kann entweder einen Pfad zum Icon übergeben oder einen <code>div</code>, der dann via CSS angesprochen wird. Im weiteren möchte ich den Weg via CSS zeigen, weil man so die Möglichkeit des Hover-Effekt nutzen kann, der ab Version 2.7 von WordPress Standard ist und die Benutzerführung sehr angenehm gestaltet.</p>
<h3>Beispiel Plugin</h3>
<p>Im folgenden ist ein kleines Beispiel zum Nachvollziehen. Dabei habe ich das Plugin wie folgt erstellt und im Ordner <code>/plugins/</code> der WP-Installation abgelegt.<br />
&rarr; plugins<br />
&nbsp;&nbsp;&nbsp;&rarr; test<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&perp;&rarr; css<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&perp;&rarr; style.css<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&perp;&rarr; images<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&perp;&rarr; fb_menu.png<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&perp;&rarr; test.php</p>
<p>Im Plugin gibt es dann die folgende Funktion um den Menu-Punkt im Top-Level Bereich zu erzeugen. Dabei wird als letzter Parameter der Wert <em>div</em> übergeben.<br />
Im Anschluss wird die Funktion via Hook aufgerufen, so dass der Menupunkt erzeugt wird und der Inhalt der Funktion zur Verfügung steht.</p>
<pre><code>
function add_menu_page_in_27() {
	add_menu_page(__('Test', 'test'), __('Test Description', 'test'), 9, basename(__FILE__), '', 'div');
}

add_action('admin_menu', 'add_menu_page_in_27');
</code></pre>
<h3>Icon via CSS Sprites</h3>
<p>Nun steht das HTML im backend, ein Icon ist damit aber noch nicht da und so nutzen wir die Möglichkeiten via CSS und erzeugen je nach Effekt das entsprechende Icon. Dazu nutze ich die Möglichkeit der CSS Sprites, die ich im Artikel &#8222;<a href="http://bueltge.de/css-sprites-einfach-erklaert/675/">CSS Sprites einfach erklärt</a>&#8220; näher erläutere.<br />
<img class="alignright" src="http://bueltge.de/wp-content/images/wp27/fb_menu.png" alt="Menu Icon for menu WordPress 2.7" /><br />
Als Icon lege ich dabei im Plugin eine Datei ab, die beiden Zustände enthält, siehe Abbildung.</p>
<p>Das zugehörige CSS sieht in meinem Beispiel wie folgt aus, welches ich im Ordner css des Plugins ablege und im Anschluss aufrufe.<br />
Dabei wird das ID für den Menupunkt aus dem Namen der Datei erstellt &#8211; <code>toplevel_page_test</code> = <code>toplevel_page_</code> + <code>test.php</code>.</p>
<pre><code>
#adminmenu #toplevel_page_test div.wp-menu-image {
	background: transparent url('../images/fb_menu.png') no-repeat scroll -1px -33px;
}
#adminmenu #toplevel_page_test:hover div.wp-menu-image,
#adminmenu #toplevel_page_test.wp-has-current-submenu div.wp-menu-image,
#adminmenu #toplevel_page_test.current div.wp-menu-image {
	background: transparent url('../images/fb_menu.png') no-repeat scroll -1px -1px;
}
</code></pre>
<pre><code>
wp_enqueue_style( 'test_css', plugins_url( $path = '/test/css/style.css'), array() );
</code></pre>
<h3>Fazit</h3>
<p>Damit steht eine saubere und übersichtliche Lösung bereit, die auch in kleineren Funktionen integriert werden kann, in dem man sie auf Basis der WP-Version abfragt.</p>
<pre><code>
if ( version_compare( $wp_version, '2.6.999', '>' ) ) {
 // ab Version 2.6.999
} else {
 // kleiner Version 2.6.999
}
</code></pre>
<h3 id="download">Download:</h3>
<form class="spenden" action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="amount" id="eins" value="" /><br />
<input type="hidden" name="cmd" value="_xclick" /><br />
<input type="hidden" name="business" value="frank@bueltge.de" /><br />
<input type="hidden" name="item_name" value="Spende bueltge.de" /><br />
<input type="hidden" name="no_shipping" value="1" /><br />
<input type="hidden" name="return" value="http://bueltge.de/" /><br />
<input type="hidden" name="cancel_return" value="http://bueltge.de/" /><input type="hidden" name="currency_code" value="EUR" /><br />
<input type="hidden" name="tax" value="0" /><br />
<input type="hidden" name="bn" value="PP-DonationsBF" /><br />
<input type="image" src="http://bueltge.de/wp-content/images/donate.png" style="border:0" name="submit" alt="Zahlen Sie mit PayPal - schnell, kostenlos und sicher!" /></form>
<p><strong>Ist die Arbeit nicht 1 Euro wert?</strong><br />
Jede Spende wird dankbar angenommen und ermöglicht das weitere Arbeiten an freier Software.<br />
Möchtest du mehr oder anders spenden, so besuche meine <a href="http://bueltge.de/wunschliste/">Wunschliste</a>.</p>
<p>Download als zip-Datei: <a href="http://bueltge.de/wp-content/download/wp/mymenu27_test.zip">mymenu27_test.zip</a> - 1 kByte<br />
<br style="clear:left" /><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><a href="http://bueltge.de/feed/"><img style="border: medium none ; float: left; margin-right: 10px;" src="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" alt="Feed Icon" width="34" height="34" /></a>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/menu-seite-ab-wordpress-27-hinzufuegen/845/#writecomment" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/menu-seite-ab-wordpress-27-hinzufuegen/845/feed/</wfw:commentRss>
		<slash:comments>18</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/wp-content/images/wp27/wp27_mymenu.png" />
		<media:content url="http://bueltge.de/wp-content/images/wp27/wp27_mymenu.png" medium="image">
			<media:title type="html">Menu Icon in WordPress 2.7</media:title>
		</media:content>
		<media:content url="http://bueltge.de/wp-content/images/wp27/fb_menu.png" medium="image">
			<media:title type="html">Menu Icon for menu WordPress 2.7</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>
		<media:content url="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" medium="image">
			<media:title type="html">Feed Icon</media:title>
		</media:content>
	</item>
		<item>
		<title>WordPress Cache steuern (Plugin)</title>
		<link>http://bueltge.de/wordpress-cache-steuern-plugin/819/</link>
		<comments>http://bueltge.de/wordpress-cache-steuern-plugin/819/#comments</comments>
		<pubDate>Wed, 12 Nov 2008 16:02:30 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Tipps]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Cache]]></category>
		<category><![CDATA[WP]]></category>
		<category><![CDATA[WP2.7]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=819</guid>
		<description><![CDATA[Seit Version 2.0 von WordPress wird mit dem Cache experimentiert und seit Version 2.3 ist er recht ausgewachsen. Dabei hat man die Strategie gewechselt und nutzt einen objektorientierten Cache. Der Cache arbeitet an den verschiedensten Stellen und ist nicht immer vom Betreiber des Blog gewollt. Daher hat <a href="http://blog.ftwr.co.uk/">Peter Westwood</a> vor langer Zeit mal ein <a href="http://blog.ftwr.co.uk/wordpress/wp-cache-inspect/">Plugin</a> vorgestellt, welches das Steuern des Cache zulässt. Dieses habe ich schon seit geraumer Zeit um einige Punkte erweitert, wobei der Zugriff nicht immer auf die Schnelle möglich war, denn man musste sich durch das Menu von WP arbeiten - siehe <a href="http://bueltge.de/wordpress-cache-kontrollieren/479/">Plugin Seite</a>.

Lange Rede kurzer Sinn - ich habe die neue WordPress-Version und diverse Wünsche von Nutzern zum Anlass genommen und ein neues Plugin erstellt. Damit löse ich das <a href="http://bueltge.de/wordpress-cache-kontrollieren/479/">alte Plugin</a> ab und pflege nur noch dieses hier.]]></description>
			<content:encoded><![CDATA[<p><img class="alignright" src="http://bueltge.de/wp-content/images/wp/wp-cache-inspect-font.png" alt="Cache Data in Frontend" /><br />
Seit Version 2.0 von WordPress wird mit dem Cache experimentiert und seit Version 2.3 ist er recht ausgewachsen. Dabei hat man die Strategie gewechselt und nutzt einen objektorientierten Cache. Der Cache arbeitet an den verschiedensten Stellen und ist nicht immer vom Betreiber des Blog gewollt. Daher hat <a href="http://blog.ftwr.co.uk/">Peter Westwood</a> vor langer Zeit mal ein <a href="http://blog.ftwr.co.uk/wordpress/wp-cache-inspect/">Plugin</a> vorgestellt, welches das Steuern des Cache zulässt. Dieses habe ich schon seit geraumer Zeit um einige Punkte erweitert, wobei der Zugriff nicht immer auf die Schnelle möglich war, denn man musste sich durch das Menu von WP arbeiten - siehe <a href="http://bueltge.de/wordpress-cache-kontrollieren/479/">Plugin Seite</a>.</p>
<p>Lange Rede kurzer Sinn - ich habe die neue WordPress-Version und diverse Wünsche von Nutzern zum Anlass genommen und ein neues Plugin erstellt. Damit löse ich das <a href="http://bueltge.de/wordpress-cache-kontrollieren/479/">alte Plugin</a> ab und pflege nur noch dieses hier.<br />
<span id="more-819"></span></p>
<h3>Was macht das Plugin?</h3>
<p>Das Plugin ermöglicht es an verschiedenen Stellen des Backend einen Link, zum Aktualisieren des WordPress internen Cache, zu hinterlegen.<br />
Ebenso kann man sich alle Inhalte des Cache in einer einfachen Baumstruktur anschauen.<br />
Aber auch ohne aktiv zu werden steuert das Plugin den Cache, in dem es in Bereichen wie Kommentar frei geben, Beitrag editieren, Beitrag löschen und ähnliches den Cache neu aufsetzt. Alternativ kann man das via Direktzugriff im Backend und Frontend machen. Die unterschiedlichen Möglichkeiten lassen sich via Optionen setzen.<br />
Ebenso kann man als geloggte User, der die Rechte der Cache-Steuerung hat, in der Regel Admin&apos;s, im Frontend die wichtigsten Inhalte des Cache sehen.</p>
<p><strong>Vielen Dank</strong> an <a href="http://www.code-styling.de/">Heiko Rabe</a>, <a href="http://blogwerk.com/">Philip Hetjens</a> und <a href="http://www.ebiene.de/">Sergej Müller</a> für die Unterstützung beim Plugin. Diverse Ansätze und Überlegungen kamen aus den sehr netten Kontakten.</p>
<h3>Anforderungen</h3>
<p>Das Plugin arbeitet mit WP 2.0 und höher, inklusive 2.5, optimiert ist es für 2.6 &#038; 2.7.</p>
<h3>Installation</h3>
<ol>
<li>Plugin downloaden und die zip-Datei lokal entpacken.</li>
<li>Die PHP-Datei in euren WordPress-Plugin-Ordner kopieren (<code>/wp-content/plugins/</code>).</li>
<li>Im Adminbereich deines Blogs das Plugin aktivieren.</li>
<li>Die Einstellung auf eure Wünsche anpassen!</li>
</ol>
<p><img class="centered" src="http://bueltge.de/wp-content/images/wp/wp-cache-inspect-options.png" alt="Screenshot der Optionen in WP 2.7" /></p>
<h3>Download:</h3>
<form class="spenden" action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="amount" id="eins" value="" /><br />
<input type="hidden" name="cmd" value="_xclick" /><input type="hidden" name="business" value="frank@bueltge.de" /><input type="hidden" name="item_name" value="Spende bueltge.de" /><input type="hidden" name="no_shipping" value="1" /><input type="hidden" name="return" value="http://bueltge.de/" /><input type="hidden" name="cancel_return" value="http://bueltge.de/" /><input type="hidden" name="currency_code" value="EUR" /><input type="hidden" name="tax" value="0" /><input type="hidden" name="bn" value="PP-DonationsBF" /><input type="image" src="http://bueltge.de/wp-content/images/donate.png" style="border:0" name="submit" alt="Zahlen Sie mit PayPal - schnell, kostenlos und sicher!" /><br />
</form>
<p><strong>Ist die Arbeit nicht 1 Euro wert?</strong><br />
Jede Spende wird dankbar angenommen und ermöglicht das weitere Arbeiten an freier Software.<br />
Möchtest du mehr oder anders spenden, so besuche meine <a href="http://bueltge.de/wunschliste/">Wunschliste</a>.</p>
<p>Download als zip-Datei:<br />
<a href="http://downloads.wordpress.org/plugin/wp-cache-inspect.zip">downloads.wordpress.org/plugin/wp-cache-inspect.zip</a> - 76 kByte</p>
<h3 id="historie">Historie</h3>
<ul>
<li>Grundversion stammt von <a href="http://bueltge.de/wordpress-cache-kontrollieren/479/">PJW WP Cache Inspect</a></li>
<li>0.6 - neuer Code, mehr Funktionen und optimiert für WP 2.6 &#038; WP 2.7</li>
<li>0.7 - Link zum Aktualisieren des Cache im Frontend möglich</li>
<li>0.8 - Einstellungen im Settings-Bereich, User-Einstellungen der Boxen werden gespeichert, Auslagerung CSS und JS, div. Änderungen im Code</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><a href="http://bueltge.de/feed/"><img style="border: medium none ; float: left; margin-right: 10px;" src="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" alt="Feed Icon" width="34" height="34" /></a>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-cache-steuern-plugin/819/#writecomment" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/wordpress-cache-steuern-plugin/819/feed/</wfw:commentRss>
		<slash:comments>49</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/wp-content/images/wp/wp-cache-inspect-font.png" />
		<media:content url="http://bueltge.de/wp-content/images/wp/wp-cache-inspect-font.png" medium="image">
			<media:title type="html">Cache Data in Frontend</media:title>
		</media:content>
		<media:content url="http://bueltge.de/wp-content/images/wp/wp-cache-inspect-options.png" medium="image">
			<media:title type="html">Screenshot der Optionen in WP 2.7</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>
		<media:content url="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" medium="image">
			<media:title type="html">Feed Icon</media:title>
		</media:content>
	</item>
		<item>
		<title>WordPress Plugins bereichern</title>
		<link>http://bueltge.de/wordpress-plugins-bereichern/811/</link>
		<comments>http://bueltge.de/wordpress-plugins-bereichern/811/#comments</comments>
		<pubDate>Sun, 02 Nov 2008 00:27:38 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Tipps]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[WP2.7]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=811</guid>
		<description><![CDATA[Mit der kommenden Version von WordPress 2.7 verändert sich das Menu in die verticale, damit stehen dem Autor aber weitere Möglichkeiten offen, die schon in einigen Beiträgen Erwähnung fanden. In diesem Beitrag möchte ich aber Plugin-Autoren ansprechen und sie bitten, macht eure Plugins bedienerfreundlicher &#8211; nur zwei kleine Möglichkeiten möchte ich zeigen; diese zeigen aber, in welchem Detail es liegen kann. Die Möglichkeiten wurden schon mehrfach in der WP-Hacker-Mailing-List besprochen und so gut wie alle sehen es als Mehrwert.]]></description>
			<content:encoded><![CDATA[<p>Mit der kommenden Version von WordPress 2.7 verändert sich das Menu in die verticale, damit stehen dem Autor aber weitere Möglichkeiten offen, die schon in einigen Beiträgen Erwähnung fanden. In diesem Beitrag möchte ich aber Plugin-Autoren ansprechen und sie bitten, macht eure Plugins bedienerfreundlicher &#8211; nur zwei kleine Möglichkeiten möchte ich zeigen; diese zeigen aber, in welchem Detail es liegen kann. Die Möglichkeiten wurden schon mehrfach in der WP-Hacker-Mailing-List besprochen und so gut wie alle sehen es als Mehrwert.<br />
<span id="more-811"></span></p>
<h3>Icon im Menu</h3>
<p><img class="alignright" src="http://bueltge.de/wp-content/images/wp27/wp27_icon_menu.png" alt="Icon im Menu" /><br />
Im ersten Fall möchte ich zeigen, wie man das Menu um ein Icon erweitern kann. Dies kann zu Mehrwert im Sinne von Übersichtlichkeit führen bzw. ist es auch ein Hingucker für die Nutzer, der Menu-Link ist augenscheinlicher. Ich verwende zum Einbau des kleinen Icon nicht den Verweis auf die Datei, sondern lege das Icon <a href="http://de.wikipedia.org/wiki/Base64">base64</a>-codiert im Code des Plugins ab. Das sparrt eine Datei, geschweige denn einen Ordner und den Zugriff, so dass ein request gespart wird. </p>
<p>Um eine Datei in den Code zu wandeln, habe ich einen kleinen <a href=""http://bueltge.de/test/image2base64/">Service</a> eingerichtet, wer sich also nichts selber bauen will, kann diesen gern nutzen &#8211; <a href="http://bueltge.de/test/image2base64/">Image2Base64 Generator</a>.</p>
<p>Das Icon wird nur ab Version 2.7 von WordPress integriert, dass prüfe ich mit einer einfachen Abfrage der Version. Weitere Infos habe ich am Code hinterlegt.</p>
<pre><code>
/**
 * Images/ Icons in base64-encoding
 * @use function fb_sayfa_sayac_get_resource_url() for display
 */
if( isset($_GET['resource']) &amp;&amp; !empty($_GET['resource'])) {
	# base64 encoding
	$resources = array(
		'ssprc.gif' =&gt;
		'R0lGODlhCwALAKIEANTU1Kurq/b29pSUlP///wAAAAAAAAAAAC'.
		'H5BAEAAAQALAAAAAALAAsAAAMlSKoRMysGIZ50A1RJ3ybNow3f'.
		'VJGoQo4nRJDdpwqjtcDy/dhLAgA7'.
		'');
	
	if(array_key_exists($_GET['resource'], $resources)) {

		$content = base64_decode($resources[ $_GET['resource'] ]);

		$lastMod = filemtime(__FILE__);
		$client = ( isset($_SERVER['HTTP_IF_MODIFIED_SINCE']) ? $_SERVER['HTTP_IF_MODIFIED_SINCE'] : false );
		// Checking if the client is validating his cache and if it is current.
		if (isset($client) &amp;&amp; (strtotime($client) == $lastMod)) {
			// Client's cache IS current, so we just respond '304 Not Modified'.
			header('Last-Modified: '.gmdate('D, d M Y H:i:s', $lastMod).' GMT', true, 304);
			exit;
		} else {
			// Image not cached or cache outdated, we respond '200 OK' and output the image.
			header('Last-Modified: '.gmdate('D, d M Y H:i:s', $lastMod).' GMT', true, 200);
			header('Content-Length: '.strlen($content));
			header('Content-Type: image/' . substr(strrchr($_GET['resource'], '.'), 1) );
			echo $content;
			exit;
		}
	}
}


/**
 * Display Images/ Icons in base64-encoding
 * @return $resourceID
 */
function fb_sayfa_sayac_get_resource_url($resourceID) {
	
	return trailingslashit( get_bloginfo('url') ) . '?resource=' . $resourceID;
}


/**
 * add menu in backend
 */
function fb_sayfa_sayac_add_menu() {
	global $wp_version;
	if ( current_user_can('edit_posts') &amp;&amp; function_exists('add_submenu_page') ) {

		$menutitle = '';
		if ( version_compare( $wp_version, '2.6.999', '&gt;' ) ) {
			$menutitle = '&lt;img src=&quot;' . wpag_get_resource_url('ssprc.gif') . '&quot; alt=&quot;&quot; /&gt;' . ' ';
		}
		$menutitle .= __('Post Read Counter', 'sayfasayacprc');
		
		add_submenu_page('index.php', __('Sayfa Sayac - Post Read Counter', 'sayfasayacprc'), $menutitle, 9, __FILE__, 'fb_sayfa_sayac_statistic');
		$plugin = plugin_basename(__FILE__); 
		add_filter( 'plugin_action_links_' . $plugin, 'fb_sayfa_sayac_plugin_actions' );
	}
}
</code></pre>
<p>Den img-Tag erweitere ich um ein Leerzeichen, damit es nicht direkt am Menutext klebt. Man könnte das auch über eine CSS-Definition machen, aber das wäre dann in den meisten Fällen wohl ein Inline-Style. Dieser bringt unnötig Code, eine Unsauberkeit und schlechtere Performance in das Backend. Bei den Entwicklern von WordPress habe ich das schon länger angesprochen, eventuell bekommen wir die CSS-Definition noch im Styte zu 2.7.</p>
<p><img class="alignright" src="http://bueltge.de/wp-content/images/wp27/settings.png" alt="Settings Link" /></p>
<h3>Absprung im Plugin-Bereich</h3>
<p> den obigen Code genauer angeschaut hat, der wird schon den Zugriff auf den Filter <code>plugin_action_links</code> bemerkt haben. Diese nutze ich um auf der Plugin-Seite einen Absprung einzuhängen. Dieser erleichtert den Absprung in die Einstellungen oder den Datenbereich, wie hier im Beispiel. Ich denke, dass man damit dem Nutzer die Benutzung vereinfacht - kein Suchen, wo befindet sich nun der Bereich. Der Screenshot zeigt es schon, dass ich bei meinen Plugins immer den Settings-Link links der beiden Standard-Links <em>Deaktivieren</em> und <em>Bearbeiten</em>, wenn die Rechte der Datei das zulassen, integriere.</p>
<pre><code>
/**
 * Adds an action link to the plugins page
 */
function fb_sayfa_sayac_plugin_actions($links) {

	$settings_link = '&lt;a href=&quot;sayfa_sayac_de.php&quot;&gt;' . __('Settings') . '&lt;/a&gt;';
	array_unshift( $links, $settings_link );

	return $links;
}
</code></pre>
<p>Die obigen Funktion läuft nur ab WordPress 2.7 und wurde von <a href="http://elektroelch.de/blog/2008/11/06/wordpress-absprung-im-plugin-bereich-v27/">Latz</a> näher vorgestellt! Möchte man abwärts kompatibel sein, dann geht es etwas umständlicher.</p>
<pre><code>
/**
 * Adds an action link to the plugins page
 */
function fb_sayfa_sayac_plugin_actions($links, $file){
	static $this_plugin;

	if( !$this_plugin ) $this_plugin = plugin_basename(__FILE__);

	if( $file == $this_plugin ){
		$settings_link = '&lt;a href=&quot;index.php?page=sayfa_sayac/sayfa_sayac_de.php&quot;&gt;' . __('Settings') . '&lt;/a&gt;';
		$links = array_merge( array($settings_link), $links); // before other links
	}
	return $links;
}
</code></pre>
<p>Nutzt man diese etwas unübersichtliche Form, dann muss der Filter anders eingebunden werden, in meinem Beispiel in der Funktion <code>fb_sayfa_sayac_add_menu()</code> ist zu tauschen</p>
<pre><code>
$plugin = plugin_basename(__FILE__); 
add_filter( 'plugin_action_links_' . $plugin, 'fb_sayfa_sayac_plugin_actions' );
</code></pre>
<p>in</p>
<pre><code>
add_filter( 'plugin_action_links', 'fb_sayfa_sayac_plugin_actions', 10, 2 );
</code></pre>
<h3>Aktivieren der beiden Hooks</h3>
<p>Über den Hook <code>admin_menu</code> aktivere ich die beiden anderen Hooks. Im Vorfeld frage ich aber ab, ob man sich auch im Admin befindet, so dass nur dann der Code Beachtung findet.</p>
<pre><code>
/* Register WordPress hooks */
if ( is_admin() ) {
	add_action('admin_menu', 'fb_sayfa_sayac_add_menu');
}
</code></pre>
<p>Ich denke, dass die diese beiden Möglichkeiten einen Mehrwert darstellen und schon eine ganze Reihe von Plugins haben diese Funktion, andere werden in naher Zukunft ein Update bekommen. Vielen Nutzer bestätigen mir das und mögen vor allem den schnellen Absprung im Plugin-Bereich. Ideen, Lob und Kritiken &#8211; wie immer steht die Kommentarfunktion offen und freut sich über Meinungen.<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><a href="http://bueltge.de/feed/"><img style="border: medium none ; float: left; margin-right: 10px;" src="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" alt="Feed Icon" width="34" height="34" /></a>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-plugins-bereichern/811/#writecomment" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/wordpress-plugins-bereichern/811/feed/</wfw:commentRss>
		<slash:comments>35</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/wp-content/images/wp27/wp27_icon_menu.png" />
		<media:content url="http://bueltge.de/wp-content/images/wp27/wp27_icon_menu.png" medium="image">
			<media:title type="html">Icon im Menu</media:title>
		</media:content>
		<media:content url="http://bueltge.de/wp-content/images/wp27/settings.png" medium="image">
			<media:title type="html">Settings Link</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>
		<media:content url="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" medium="image">
			<media:title type="html">Feed Icon</media:title>
		</media:content>
	</item>
		<item>
		<title>WordPress Dashboard Widget hinzufügen</title>
		<link>http://bueltge.de/wordpress-dashboard-widget-hinzufuegen/804/</link>
		<comments>http://bueltge.de/wordpress-dashboard-widget-hinzufuegen/804/#comments</comments>
		<pubDate>Sun, 26 Oct 2008 21:57:23 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Tipps]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Theme]]></category>
		<category><![CDATA[Widget]]></category>
		<category><![CDATA[WP]]></category>
		<category><![CDATA[WP2.7]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=804</guid>
		<description><![CDATA[Die kommende Version 2.7 von WordPress bringt die lang ersehnten Widgets in den Dashboard-Bereich. Damit kann dann jeder User seine eigenen Vorstellungen des Dashboard realisieren. Damit ist es auch dem Nutzer überlassen, wie lange die Ladezeiten sind und welche Informationen man dort sehen will.

Für Plugin- und Theme-Autoren ist es aber interessant, denn ab nun kann man dem Nutzer diversen Mehrwert bieten. Informationen aus dem Plugin oder Theme können dort angeboten werden, so dass der Nutzer selbst entscheidet, ob er diese sehen will.

Schön ist, dass die Integration sehr einfach zu nutzen ist und ähnlich wie die Meta Boxen gesteuert wird, die im übrigen dafür verantwortlich ist, aber mit einer Funktion direkt für Widgets ausgestattet wurde. Das folgende kleine Beispiel zeigt, wie man ein Widget in das Dashboard integriert.]]></description>
			<content:encoded><![CDATA[<p>Die kommende Version 2.7 von WordPress bringt die lang ersehnten Widgets in den Dashboard-Bereich. Damit kann dann jeder User seine eigenen Vorstellungen des Dashboard realisieren. Ebenfalls ist es nun auch dem Nutzer überlassen, wie lange die Ladezeiten sind und welche Informationen man dort sehen will; je nach Integration von externen Inhalten.</p>
<p>Für Plugin- und Theme-Autoren ist es aber interessant, denn ab nun kann man dem Nutzer diversen Mehrwert bieten. Informationen aus dem Plugin oder Theme können dort angeboten werden, so dass der Nutzer selbst entscheidet, ob er diese Info's sehen will.</p>
<p>Schön ist, dass die Integration sehr einfach zu nutzen ist und ähnlich wie die <a href="http://bueltge.de/wordpress-25-edit-bereich-ansprechen/611/">Meta Boxen (hier schon detailliert erklärt)</a> gesteuert wird, die im übrigen dafür verantwortlich ist, aber mit einer Funktion direkt für Widgets ausgestattet wurde. Das folgende kleine Beispiel zeigt, wie man ein Widget in das Dashboard integriert.<br />
<span id="more-804"></span></p>
<p><img class="centered" src="http://bueltge.de/wp-content/images/wp27/wp27-dashboard-erweitern.png" alt="WP 2.7 Dashboard erweitern via Widget" /></p>
<p>Der obige Screenshot zeigt schön, dass ich das Widget <em>Test My Dashboard</em> hinzugefügt habe. Ebenfalls zu sehen ist die mögliche Deaktivierung im Menu.</p>
<pre><code>
/**
 * Inhalt des Dashboard-Widget
 */
function my_wp_dashboard_test() {
	echo 'Test Add Dashboard-Widget';
}

/**
 * Dashboard Widget hinzufügen via Funktion wp_add_dashboard_widget()
 */
function my_wp_dashboard_setup() {
	wp_add_dashboard_widget( 'my_wp_dashboard_test', __( 'Test My Dashboard' ), 'my_wp_dashboard_test' );
}

/**
 * Nutzen des Hook, um das neue Widget zu integrieren
 */
add_action('wp_dashboard_setup', 'my_wp_dashboard_setup');
</code></pre>
<p>Einige kleine Hinweise zur Aufgabe stehen direkt am Code. Im Grunde ist die Funktion <code>wp_add_dashboard_widget()</code> der Schlüssel, die übergibt das neue Widget; via Hook <code>wp_dashboard_setup</code> wird dieses dann im Dashboard aktiviert.</p>
<pre><code>
function wp_add_dashboard_widget( $widget_id, $widget_name, $callback, $control_callback = null )
</code></pre>
<p>Die Funktion benötigt 3 Parameter und ein weiterer ist optional.</p>
<ol>
<li>Die <strong>ID</strong>, <em>der erste Paramete</em>r, wird benutzt, um das Widget via JavaScript zu deaktiveren und anzusprechen. einmal im Menu:
<pre><code>
&lt;label for=&quot;my_wp_dashboard_test-hide&quot;&gt;&lt;input class=&quot;hide-postbox-tog&quot; name=&quot;my_wp_dashboard_test-hide&quot; type=&quot;checkbox&quot; id=&quot;my_wp_dashboard_test-hide&quot; value=&quot;my_wp_dashboard_test&quot; checked=&quot;checked&quot; /&gt;Test My Dashboard&lt;/label&gt;
</code></pre>
<p>und auch im eigentlichen Widget:</p>
<pre><code>
&lt;div id=&quot;my_wp_dashboard_test&quot; class=&quot;postbox &quot; &gt;
&lt;h3 class='hndle'&gt;&lt;span&gt;Test My Dashboard&lt;/span&gt;&lt;/h3&gt;
&lt;div class=&quot;inside&quot;&gt;Test Add Dashboard-Widget&lt;/div&gt;
&lt;/div&gt;
</code></pre>
</li>
<li>Der <em>zweite Parameter</em> übergibt den <strong>Namen</strong>, welcher auch sichtbar ist, eingeschlossen in den h3-Tag; bzw. auch im Menu vergeben ist.
<pre><code>
&lt;h3 class='hndle'&gt;&lt;span&gt;Test My Dashboard&lt;/span&gt;&lt;/h3&gt;
</code></pre>
</li>
<li>Mit Hilfe des <em>dritten Parameter</em> wird die <strong>Funktion</strong> übergeben, die den Inhalt des Widget enthält. Es erfolgt kein <code>echo</code>, es muss explizit genutzt werden. Daraus resultiert ein gewissen Freiheit und nicht nur die einfache Ausgabe von Inhalten kann erstellt werden.</li>
</ol>
<h4>Hinweis</h4>
<p>Der Hook <code>activity_box_end</code>, der seit Version 2.3 existiert, existiert weiterhin. Er bringt den Content in das Widget &#8222;<em>Right Now</em>&#8220;.<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><a href="http://bueltge.de/feed/"><img style="border: medium none ; float: left; margin-right: 10px;" src="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" alt="Feed Icon" width="34" height="34" /></a>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-dashboard-widget-hinzufuegen/804/#writecomment" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/wordpress-dashboard-widget-hinzufuegen/804/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/wp-content/images/wp27/wp27-dashboard-erweitern.png" />
		<media:content url="http://bueltge.de/wp-content/images/wp27/wp27-dashboard-erweitern.png" medium="image">
			<media:title type="html">WP 2.7 Dashboard erweitern via Widget</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>
		<media:content url="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" medium="image">
			<media:title type="html">Feed Icon</media:title>
		</media:content>
	</item>
		<item>
		<title>WordPress 2.7 Navi, die xte</title>
		<link>http://bueltge.de/wordpress-27-navi-die-xte/791/</link>
		<comments>http://bueltge.de/wordpress-27-navi-die-xte/791/#comments</comments>
		<pubDate>Tue, 14 Oct 2008 06:04:50 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Admin]]></category>
		<category><![CDATA[Webdesign]]></category>
		<category><![CDATA[WP2.7]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=791</guid>
		<description><![CDATA[Das Design und die Strukturierung der kommenden WordPress Version 2.7 wurde schon mehrfach vorgestellt und diskutiert. Damit mal wieder neue Informationen und Diskussionsstoff in das Feuer geworfen werden, hier mal ein Screenshot der aktuellen Beta.]]></description>
			<content:encoded><![CDATA[<p>Das Design und die Strukturierung der kommenden WordPress Version 2.7 wurde schon mehrfach vorgestellt und diskutiert. Damit mal wieder neue Informationen und Diskussionsstoff in das Feuer geworfen werden, hier mal ein Screenshot der aktuellen Beta.</p>
<p><a href="http://bueltge.de/wp-content/images/wp27/wp27_navi.png" title="Klick für Zoom"><img class="centered" src="http://bueltge.de/wp-content/images/wp27/wp27_navi-thumb.png" alt="WP 2.7 Backend Design" /></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><a href="http://bueltge.de/feed/"><img style="border: medium none ; float: left; margin-right: 10px;" src="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" alt="Feed Icon" width="34" height="34" /></a>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-27-navi-die-xte/791/#writecomment" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/wordpress-27-navi-die-xte/791/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/wp-content/images/wp27/wp27_navi-thumb.png" />
		<media:content url="http://bueltge.de/wp-content/images/wp27/wp27_navi-thumb.png" medium="image">
			<media:title type="html">WP 2.7 Backend Design</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>
		<media:content url="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" medium="image">
			<media:title type="html">Feed Icon</media:title>
		</media:content>
	</item>
		<item>
		<title>Sticky-Funktionalität ab WordPress 2.7</title>
		<link>http://bueltge.de/sticky-funktionalitaet-wordpress-27/788/</link>
		<comments>http://bueltge.de/sticky-funktionalitaet-wordpress-27/788/#comments</comments>
		<pubDate>Sun, 12 Oct 2008 23:56:00 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Themes]]></category>
		<category><![CDATA[Tipps]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Tag]]></category>
		<category><![CDATA[Template]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[WP]]></category>
		<category><![CDATA[WP2.7]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=788</guid>
		<description><![CDATA[Ab WordPress 2.7 gibt es die Möglichkeit, dass man einen Beitrag mit dem Flag Sticky versieht und damit bleibt es innerhalb des Loop immer an oberster Stelle. Bisher konnte man dies nur per Plugin lösen. Infos auch in <a href="http://bueltge.de/wordpress-27-einblicke/736/">einigen News zu 2.7</a>.]]></description>
			<content:encoded><![CDATA[<p><img class="alignright" src="http://bueltge.de/wp-content/images/wp27/wp27-sticky.png" alt="Sticky in WP 2.7" /><br />
Ab WordPress 2.7 gibt es die Möglichkeit, dass man einen Beitrag mit dem Flag Sticky versieht und damit bleibt es innerhalb des Loop immer an oberster Stelle. Bisher konnte man dies nur per Plugin lösen. Infos auch in <a href="http://bueltge.de/wordpress-27-einblicke/736/">einigen News zu 2.7</a>.</p>
<p>Die neue Möglichkeit besteht im Bereich der Veröffentlichung, des Status, dort wo man den Termin des Beitrags editieren konnte. Das ist einfach und schnell gemacht, dazu muss man nichts anpassen oder neu kennen lernen.</p>
<p>Aber was, wenn man ein Sticky entsprechend formatieren will? Dafür gibt es eine neue Funktion - <code>post_class()</code>. Diese gibt die Klassen für den jeweiligen Beitrag aus und damit auch die Klasse <code>sticky</code>, wenn es sich um einen Sticky handelt.<br />
Zusätzlich werden Klassen für Kategorien und Tags ausgegeben. Dazu ein Beispiel und nähere Erläuterungen.<br />
<span id="more-788"></span></p>
<h4>Beispielausgabe</h4>
<pre><code>
<div id="post-12" class="post sticky hentry category-allgemein category-wordpress tag-umfrage tag-wordpress">
</code></pre>
<p>Die obige Ausgabe resultiert aus dem folgenden Code im Template:</p>
<pre><code>
<div id="post-&lt;?php the_ID(); ?&gt;" &lt;?php post_class() ?&gt;>
</code></pre>
<h4>Hintergründe</h4>
<p>Die Funktion gibt also alle möglichen Klassen aus, wobei immer die</p>
<ul>
<li>Klasse zur Art ausgeben wird - <code>post</code></li>
<li>ob es sich um ein Stick-Post handelt - <code>sticky</code></li>
<li>für die Erweiterung hAtom - <code>hentry</code> (siehe <a href="http://microformats.org/wiki/hatom#Schema">Schema der Mikroformate</a>)</li>
<li>alle Kategorien, denen der Beitrag zugeordnet ist</li>
<li>und alle Tags, die zugewiesen sind.</li>
</ul>
<p>Die Funktion kann aber auch zusätzliche Klassen ausgeben. Besonders nützlich wenn man ein bestehendes Theme, welches schon vor Version 2.7 von WordPress im Einsatz ist und ein Klasse hat, erweitern will. Dies geht, in dem man die Klasse übergibt.</p>
<pre><code>
post_class( 'meine_klasse')
</code></pre>
<p>Im weiteren kann man noch die ID eines Beitrags übergeben. Von diesem Beitrag werden dann die Klassen gezogen. Auch dazu ein Beispiel.</p>
<pre><code>
post_class( 'meine_klasse', '9')
</code></pre>
<p>Im Standard sieht die Funktion wie folgt aus.</p>
<pre><code>
post_class( $class = '', $post_id = null )
</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><a href="http://bueltge.de/feed/"><img style="border: medium none ; float: left; margin-right: 10px;" src="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" alt="Feed Icon" width="34" height="34" /></a>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/sticky-funktionalitaet-wordpress-27/788/#writecomment" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/sticky-funktionalitaet-wordpress-27/788/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/wp-content/images/wp27/wp27-sticky.png" />
		<media:content url="http://bueltge.de/wp-content/images/wp27/wp27-sticky.png" medium="image">
			<media:title type="html">Sticky in WP 2.7</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>
		<media:content url="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" medium="image">
			<media:title type="html">Feed Icon</media:title>
		</media:content>
	</item>
		<item>
		<title>WordPress 2.7 Core Update</title>
		<link>http://bueltge.de/wordpress-27-core-update/782/</link>
		<comments>http://bueltge.de/wordpress-27-core-update/782/#comments</comments>
		<pubDate>Fri, 03 Oct 2008 19:16:04 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Update]]></category>
		<category><![CDATA[WP2.7]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=782</guid>
		<description><![CDATA[Die aktuelle Version der Entwicklerversion steht nun mit dem angekündigtem Core-Update zur Verfügung. Jeder kann es testen und Feedback ist seitens der Entwickler erwünscht. Für alle, die keinen Einblick in's SVN haben und wollen, hier mal ein Screenshot. Die Funktion begeistert aus Sicht der Einfachheit, klicken, warten und fertig. Andere Diskussionen möchte ich hier noch [...]]]></description>
			<content:encoded><![CDATA[<p>Die aktuelle Version der Entwicklerversion steht nun mit dem angekündigtem Core-Update zur Verfügung. Jeder kann es testen und Feedback ist seitens der Entwickler erwünscht. Für alle, die keinen Einblick in's SVN haben und wollen, hier mal ein Screenshot.</p>
<p><img class="centered" src="http://bueltge.de/wp-content/images/wp27/wp27_core_update.png" alt="WordPress 2.7 Core Update" /></p>
<p>Die Funktion begeistert aus Sicht der Einfachheit, klicken, warten und fertig. <span id="more-782"></span><br />
Andere Diskussionen möchte ich hier noch nicht starten, denn noch ist es Beta. Natürlich gibt es wie bei vielen Dingen immer etwas zu kritisieren, aber die Einfachheit war von der Nutzerwelt erwünscht. Schauen wir, ob damit die Diskussionen um zu viele, zu schnelle Updatezyklen verschwinden.</p>
<p>Alternativ kann man auch nur die aktuelle Version downloaden und dann wie gewohnt selber einspielen. Ebenso kommt WordPress nun mit einer hauseigenen Backupversion daher. Damit machen sich wieder Erweiterungen überflüssig und das Update inklusive einer Sicherung ist wirklich schnell und einfach durchgeführt. Das Backup erstellt eine XML-Datei mir dem gewohnten WordPress-XML-Format (WordPress WXR), welches man via <em>Import</em> einspielen kann. Dieser findet sich im aktuellen Design im Bereich <em>Tools</em>, welches im WP-Hacker-Diskussionskreis sehr angenehm aufgenommen wird.<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><a href="http://bueltge.de/feed/"><img style="border: medium none ; float: left; margin-right: 10px;" src="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" alt="Feed Icon" width="34" height="34" /></a>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-27-core-update/782/#writecomment" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/wordpress-27-core-update/782/feed/</wfw:commentRss>
		<slash:comments>19</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/wp-content/images/wp27/wp27_core_update.png" />
		<media:content url="http://bueltge.de/wp-content/images/wp27/wp27_core_update.png" medium="image">
			<media:title type="html">WordPress 2.7 Core Update</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>
		<media:content url="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" medium="image">
			<media:title type="html">Feed Icon</media:title>
		</media:content>
	</item>
		<item>
		<title>WordPress Plugin Daten automatisch deinstallieren</title>
		<link>http://bueltge.de/wordpress-plugin-daten-automatisch-deinstallieren/748/</link>
		<comments>http://bueltge.de/wordpress-plugin-daten-automatisch-deinstallieren/748/#comments</comments>
		<pubDate>Sun, 31 Aug 2008 23:39:36 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Tipps]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WP2.7]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=748</guid>
		<description><![CDATA[Ab der Version 2.7 von WordPress wird es die Möglichkeit geben, dass man ein Plugin aus dem Backend heraus löschen kann, siehe Version 2.7 Info. Um das Löschen der Daten auch in der Datenbank zu realisieren, müssen die Autoren der Plugins einige Voraussetzungen schaffen. Damit der eine oder andere diese Funktion in sein Plugin aufnimmt [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignright" src="http://bueltge.de/wp-content/images/wp27/wp27_delete.png" alt="Plugins löschen" title="ab Version 2.7 kann man Plugins direkt im Backend von WordPress löschen" /><br />
Ab der Version 2.7 von WordPress wird es die Möglichkeit geben, dass man ein Plugin aus dem Backend heraus löschen kann, siehe <a href="http://codex.wordpress.org/Version_2.7#Plugin_Uninstaller">Version 2.7 Info</a>. Um das Löschen der Daten auch in der Datenbank zu realisieren, müssen die Autoren der Plugins einige Voraussetzungen schaffen. Damit der eine oder andere diese Funktion in sein Plugin aufnimmt oder für die Zukunft im Hinterkopf abspeichert, zeige ich, wie man dies realisiert.<br />
<span id="more-748"></span><br />
Wer schon im Vorfeld eine Uninstall-Funktion im Plugin hatte, der muss nicht sonderlich viel umstellen. Für Interessierende, die Funktionen zum Deinstallieren finden sich in <code>wp-admin/includes/plugin.php</code></p>
<ol>
<li><code>is_uninstallable_plugin($plugin)</code></li>
<li><code>uninstall_plugin($plugin)</code></li>
</ol>
<p>und der zugehörige Hook in <code>wp-includes/plugin.php</code></p>
<ol>
<li><code>register_uninstall_hook($file, $callback)</code></li>
</ol>
<p>Um nun das Plugin mit der Möglichkeit zu bereichern, können <strong>zwei Möglichkeiten</strong> genutzt werden.</p>
<ol>
<li>Eine Datei mit der Bezeichnung<code>uninstall.php</code> muss im Plugin vorliegen.</li>
<li>Der Hook zur Deinstallation <code>register_uninstall_hook</code> muss angesprochen werden.</li>
</ol>
<p>Bis zu Version 2.7 von WordPress konnte man ebenfalls die Daten aus der Datenbank löschen, allerdings nur wenn man das Plugin deaktiviert (Hook <code>register_deactivation_hook()</code>) oder mit Hilfe eines Formulars. Sollte dabei eine Funktion genutzt worden sein, dann kann diese auch weiterhin dafür einspringen. Lediglich das Ansprechen hat sich geändert.<br />
Um auch andere Versionen von WordPress zu unterstützen, empfiehlt es sich die Konstante <code>WP_UNINSTALL_PLUGIN</code> abzufragen, denn diese steht erst ab Version 2.7 zu diesem Zweck bereit. Alternativ kann man auch den Hook <code>register_uninstall_hook()</code> nutzen, da dieser zur Funktion via Hook notwendig ist. Beide Möglichkeiten habe ich im folgenden Beispielen hinterlegt.</p>
<p><img class="centered" src="http://bueltge.de/wp-content/images/wp27/wp27_delete2.png" alt="Plugins löschen" title="ab Version 2.7 kann man Plugins direkt im Backend von WordPress löschen" /></p>
<p>Die folgenden Funktion soll beispielhaft in einem Plugin stehen und löscht den Eintrag <em>example</em> aus der Datenbank Tabelle <code>options</code>.</p>
<pre><code>
/**
 * Delete options in database
 */
function example_deinstall() {

	delete_option('example');
}
</code></pre>
<h3>via Datei <code>uninstall.php</code></h3>
<p>Die einfachste Möglichkeit ist das Anlegen der Datei <code>unistall.php</code> mit den entsprechenden Einträgen zum Löschen von Daten in der Tabelle <code>options</code>.</p>
<pre><code>
delete_option('example');
</code></pre>
<p>Um ein Fehlverhalten in älteren Versionen von WordPress vorzubeugen, empfiehlt sich hier der Einsatz der Konstante. Ist diese nicht definiert, dann findet im Beispiel ein einfacher Abruch statt.</p>
<pre><code>
if ( !defined('WP_UNINSTALL_PLUGIN') ) {
    exit();
}
delete_option('example');
</code></pre>
<h3>via Hook <code>register_uninstall_hook()</code></h3>
<p>Alternativ kann man die Deinstallation auch per Hook registrieren, so dass man nicht auf die Datei angewiesen ist und man optional einfacher eine Möglichkeit der Deinstallation in das Plugin integrieren kann. Dazu steht der Hook <code>register_uninstall_hook()</code> zur Verfügung.</p>
<pre><code>
 /**
 * Check for hook
 */
if ( function_exists('register_uninstall_hook') )
	register_uninstall_hook(__FILE__, 'example_deinstall');

 /**
 * Delete options in database
 */
function example_deinstall() {

	delete_option('example');
}
</code></pre>
<p>Die Möglichkeit, dass man direkt im Backend von WordPress Plugins löschen kann, macht es sicher dem Nutzer ein wenig leichter, seine Installation von unnötigen Daten zu befreien. Nun müssen die Autoren von Plugins diese Lösung noch unterstützen und die Tabell <code>options</code> wird es sicher danken.<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><a href="http://bueltge.de/feed/"><img style="border: medium none ; float: left; margin-right: 10px;" src="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" alt="Feed Icon" width="34" height="34" /></a>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-plugin-daten-automatisch-deinstallieren/748/#writecomment" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/wordpress-plugin-daten-automatisch-deinstallieren/748/feed/</wfw:commentRss>
		<slash:comments>17</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/wp-content/images/wp27/wp27_delete.png" />
		<media:content url="http://bueltge.de/wp-content/images/wp27/wp27_delete.png" medium="image">
			<media:title type="html">ab Version 2.7 kann man Plugins direkt im Backend von WordPress löschen</media:title>
		</media:content>
		<media:content url="http://bueltge.de/wp-content/images/wp27/wp27_delete2.png" medium="image">
			<media:title type="html">ab Version 2.7 kann man Plugins direkt im Backend von WordPress löschen</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>
		<media:content url="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" medium="image">
			<media:title type="html">Feed Icon</media:title>
		</media:content>
	</item>
		<item>
		<title>WordPress, Kommentare im Admin beantworten</title>
		<link>http://bueltge.de/wordpress-kommentar-admin-beantworten/746/</link>
		<comments>http://bueltge.de/wordpress-kommentar-admin-beantworten/746/#comments</comments>
		<pubDate>Fri, 29 Aug 2008 05:49:48 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Admin]]></category>
		<category><![CDATA[Kommentar]]></category>
		<category><![CDATA[WP2.7]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=746</guid>
		<description><![CDATA[Schon immer habe ich die Funktion in WordPress vermisst, dass man die Kommentare direkt aus Backend-Bereich beantworten kann. Bisher habe ich mir mit dem Plugin &#8222;Ozh' Absolute Comments&#8220; geholfen (allerdings macht das Plugin Probleme, wenn ich per Handy im Backend unterwegs bin). Bekommt man eine Reihe von Kommentaren und will diese auch lesen und beantworten, [...]]]></description>
			<content:encoded><![CDATA[<p>Schon immer habe ich die Funktion in WordPress vermisst, dass man die Kommentare direkt aus Backend-Bereich beantworten kann. Bisher habe ich mir mit dem Plugin &#8222;<a href="http://planetozh.com/blog/my-projects/absolute-comments-manager-instant-reply/">Ozh' Absolute Comments</a>&#8220; geholfen (allerdings macht das Plugin Probleme, wenn ich per Handy im Backend unterwegs bin). Bekommt man eine Reihe von Kommentaren und will diese auch lesen und beantworten, so ist es für meine Begriff unumgänglich, dass man dies direkt aus dem Backend her macht. Andere mögen da anderer Ansicht sein.</p>
<p>Nun integriert WordPress diese Funktion in den Core und ab Version 2.7 steht es den Nutzern bereit. Unkompliziert kann man nun auf den Editor zugreifen und den jeweiligen Kommentar direkt ansprechen.</p>
<p><img class="centered" src="http://bueltge.de/wp-content/images/wp27/wp27_comment_reply.png" alt="WordPress 2.7 Reply Comment" title="Direkt aus dem Adminbereich von WordPress kann man nun den Kommentar beantworten, inkl. Editor" /><br />
<span id="more-746"></span><br />
Interessant ist das auch, weil vielleicht der eine oder andere diese Möglichkeit im Frontend haben möchte, quasi die Funktionen des Admin im Frontend des Blog. Damit wird es ein wenig einfacher die Funktionen zu integrieren und bei geloggtem User könnte man diese Funktionen auch im Frontend zur Verfügung stellen. Hat den Vorteil, dass man das LAyout direkt überprüfen kann; besonders interessant bei Code-Schnippseln.</p>
<p>WordPress hat aktuell noch weitere schöne Sachen im aktuellen Beta drin, dazu aber eventuell ein anderes mal mehr.</p>
<h4>Kleiner Nachtrag</h4>
<p>Man kann nun Kommentare per Tastatur effektiver und schneller behandeln, dabei stehen folgende Tasten zur Verfügung:</p>
<ul>
<li>j = next comment</li>
<li>k = previous</li>
<li>a = approve</li>
<li>u = unapprove</li>
<li>d = delete</li>
<li>s = spam</li>
<li>r = reply</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><a href="http://bueltge.de/feed/"><img style="border: medium none ; float: left; margin-right: 10px;" src="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" alt="Feed Icon" width="34" height="34" /></a>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-kommentar-admin-beantworten/746/#writecomment" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/wordpress-kommentar-admin-beantworten/746/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/wp-content/images/wp27/wp27_comment_reply.png" />
		<media:content url="http://bueltge.de/wp-content/images/wp27/wp27_comment_reply.png" medium="image">
			<media:title type="html">Direkt aus dem Adminbereich von WordPress kann man nun den Kommentar beantworten, inkl. Editor</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>
		<media:content url="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" medium="image">
			<media:title type="html">Feed Icon</media:title>
		</media:content>
	</item>
		<item>
		<title>WordPress 2.7 Einblicke</title>
		<link>http://bueltge.de/wordpress-27-einblicke/736/</link>
		<comments>http://bueltge.de/wordpress-27-einblicke/736/#comments</comments>
		<pubDate>Thu, 21 Aug 2008 14:59:11 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WP2.7]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=736</guid>
		<description><![CDATA[Ein kleiner Nachtrag zum aktuellen Release im SVN und dem zugehörigen Beitrag, denn die Einstellungen zum Bilderuplaod und setzen im Beitrag sind nun schon drin und ebenso die Möglichkeit einen Beitrag als Sticky zu setzen. Bisher nur per Plugin möglich, kann man nun als Autor entscheiden, ob der Beitrag auf der Startseite längerfristig erscheinen soll [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignright" src="http://bueltge.de/wp-content/images/wp27/wp27-sticky.png" alt="WP 2.7 Sticky" /></p>
<p>Ein kleiner Nachtrag zum aktuellen Release im SVN und dem <a href="http://bueltge.de/wordpress-27-seit-heute-mit-neuerungen/734/">zugehörigen Beitrag</a>, denn die Einstellungen zum Bilderuplaod und setzen im Beitrag sind nun schon drin und ebenso die Möglichkeit einen Beitrag als Sticky zu setzen. Bisher nur per Plugin möglich, kann man nun als Autor entscheiden, ob der Beitrag auf der Startseite längerfristig erscheinen soll - immer als Beitrag Nummer 1 im Loop.</p>
<p>Der Bereich Verwalten wird wieder mit zusätzlichen Links versehen sein. Unter anderem wurde das ja an dem letzten Designwechsel zu Version 2.5 kritisiert. So kann man nun wieder einen Link zum <em>Bearbeiten </em>und <em>Löschen </em>vorfinden. Ebenso gibt es einen neue Darstellung, die die Beiträge mit dem <em>Auszug </em>(Excerpt View) listet.</p>
<p>Im Bereich Schreiben erinnert es wieder ein wenig an die Version 2.3, denn man kann nun die Metaboxen wieder positionieren. Dazu ist die <a href="http://ui.jquery.com/">UI für jQuery</a> hinzugekommen und Kategorien, Tags und Veröffentlichungsdaten sind nun wieder rechts neben dem Editor. Ebenso tut sich etwas in der Möglichkeit Medien einzufügen, denn ein neuer bereich im Siderbar ist aktiv, bisher aber nicht befüllt - lassen wir uns auch hier überraschen.<br />
<span id="more-736"></span></p>
<p><img class="centered" src="http://bueltge.de/wp-content/images/wp27/wp27-img-opt.png" alt="WP 2.7 Bild Upload Einstellungen" title="WP 2.7, die Bild Upload Einstellungen" /></p>
<p><img class="centered" src="http://bueltge.de/wp-content/images/wp27/wp27-manage-post.png" alt="WP 2.7 manage post" title="WP 2.7, Beiträge verwalten" /></p>
<p>Die Installation von Plugins direkt im Backend funktioniert ebenso zu großen Teilen, einfach mal ein kleiner Einblick via Screenshot, ohne auf die Details einzugehen, denn die sind noch nicht fertig und sicher der einen oder anderen Diskussion würdig.</p>
<p><img class="centered" src="http://bueltge.de/wp-content/images/wp27/wp27-plugin-install.png" alt="WP 2.7 Plugin Installer" title="WP 2.7, die Plugin Installer direkt im backend" /><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><a href="http://bueltge.de/feed/"><img style="border: medium none ; float: left; margin-right: 10px;" src="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" alt="Feed Icon" width="34" height="34" /></a>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-27-einblicke/736/#writecomment" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/wordpress-27-einblicke/736/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/wp-content/images/wp27/wp27-sticky.png" />
		<media:content url="http://bueltge.de/wp-content/images/wp27/wp27-sticky.png" medium="image">
			<media:title type="html">WP 2.7 Sticky</media:title>
		</media:content>
		<media:content url="http://bueltge.de/wp-content/images/wp27/wp27-img-opt.png" medium="image">
			<media:title type="html">WP 2.7, die Bild Upload Einstellungen</media:title>
		</media:content>
		<media:content url="http://bueltge.de/wp-content/images/wp27/wp27-manage-post.png" medium="image">
			<media:title type="html">WP 2.7, Beiträge verwalten</media:title>
		</media:content>
		<media:content url="http://bueltge.de/wp-content/images/wp27/wp27-plugin-install.png" medium="image">
			<media:title type="html">WP 2.7, die Plugin Installer direkt im backend</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>
		<media:content url="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" medium="image">
			<media:title type="html">Feed Icon</media:title>
		</media:content>
	</item>
		<item>
		<title>WordPress 2.7 seit heute mit Neuerungen</title>
		<link>http://bueltge.de/wordpress-27-seit-heute-mit-neuerungen/734/</link>
		<comments>http://bueltge.de/wordpress-27-seit-heute-mit-neuerungen/734/#comments</comments>
		<pubDate>Thu, 21 Aug 2008 10:15:31 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WP2.7]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=734</guid>
		<description><![CDATA[Seit heute hat die aktuelle Beta das neue Gesicht, welches schon viel spekuliert wurde. Die Oberfläche wurde bisher nur in der Studie CrazyHorse implementiert. Nun ist ist sie in der Version 2.7 - hemorrhage drin. Ob sie damit in die kommende 2.7 kommt - lassen wir uns überraschen. Für Entwickler und Buchautoren ist sie sicher [...]]]></description>
			<content:encoded><![CDATA[<p>Seit heute hat die aktuelle Beta das neue Gesicht, welches schon viel spekuliert wurde. Die Oberfläche wurde bisher nur in der Studie <a href="http://bueltge.de/wordpress-prototype/682/">CrazyHorse</a> implementiert. Nun ist ist sie in der Version 2.7 - <em>hemorrhage</em> drin.</p>
<p>Ob sie damit in die kommende 2.7 kommt - lassen wir uns überraschen. Für Entwickler und Buchautoren ist sie sicher einen Blick wert, denn das eine oder andere Problem mit Darstellungen in Plugins wird wohl auftreten und ein Buch zum Thema WordPress zu schreiben, macht es damit auch nicht leichter. Bisher musste ich mich nur mit der Vielzahl von Neuerungen rum schlagen, nun können <a href="http://wildbits.de/">Thomas</a> und ich kaum noch mit dem Tempo von WP mithalten. Fast täglich kommen neue Funktionen, die einen tieferen Blick wert sind und erschweren uns das Schreiben. Das Erstellen von Screenshots haben wir gänzlich aufgegeben, obwohl wir damit sehr sparsam umgehen, denn pro Bild bekommen wir recht viele Zeichen hin, die doch mehr Aussage haben.</p>
<p>Eine ganze Reihe von interessanten Punkten und Zielsetzungen haben ich bereits auf das Blog von <a href="http://blog.wordpress-deutschland.org/2008/08/04/wordpress-27-zielsetzungen.html">WordPress Deutschland</a> genannt. Einiges ist schon drin, vieles fehlt noch.</p>
<p>Schon jetzt kann man mit der neuen Inbox spielen und begutachten.<br />
<a href="http://bueltge.de/wp-content/images/wp27/wp27-inbox.png" title="Klick für Zoom des Screenshot"><img class="centered" src="http://bueltge.de/wp-content/images/wp27/wp27-inbox.thumb.png" alt="WP 2.7 Inbox" title="Die Oberfläche in der aktuellen Beta 2.7 in Bereich Inbox" /></a><span id="more-734"></span><br />
Es wird also viele Neuerungen geben, nicht nur im Frontend, sondern auch im Funktionsumfang. Eine ganze Reihe Neuerungen werden nicht augenscheinlich zu entdecken sein, aber es passiert einiges und aktuell arbeit man sehr fleißig. Schon jetzt ist die neue http-API drin, die unter anderem für das automatische Update des Core und der Plugins, Installation von Plugins direkt im Backend und die Suche nach Plugin-Lösungen im Backend der WP-Installation. Dies hat den Nachteil, dass man nicht Offline arbeiten kann, für die aktuelle Version habe ich ein Workaround bzw. Plugin erstellt, siehe Artikel &#8222;<a href="http://bueltge.de/wordpress-27-offline-nutzen/710/">WordPress 2.7 offline nutzen</a>&#8220;</p>
<p>Dies kann fatale Folgen haben, wird doch der Code eines Plugins bisher nicht geprüft; prinzipiell kann jeder Nutzer sein Plugin im offiziellen Verzeichnis von WordPress hoch laden, ohne jegliche Prüfung, wie das in wenigen Punkten bei einem Theme gemacht wird.<br />
Nach meiner Ansicht kann WordPress das auch aktuell nicht leisten, mit dem Umfang der Entwickler und freien Mitarbeiter (aktuell ca. 15 + 3 freie Entwickler) wird der Einblick in jedes neue Plugin, geschweige denn Updates, nicht realisierbar sein. Aber die Vielzahl und die Einfachheit von WordPress-Plugins haben sicher WordPress zu der Popularität verholfen, die WP heute hat. Will man dies also leisten, oder will man die Freiheit dem Entwickler überlassen. Leider gibt es immer schwarze Schafe und das Einbinden von schadhaftem Code via Plugin wird damit einfacher. Das Vertrauen des Nutzers an WordPress ist schnell gesetzt, aber damit ist keine Sicherheit gegenüber den Plugin-Autoren gegeben. <strong>Um so mehr appelliere ich an euch Nutzer - prüft die Plugins, bevor ihr sie einsetzt! Trennt endlich den Administrator vom Nutzer!</strong> Das kann man auch, wenn man den Code nicht versteht.<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><a href="http://bueltge.de/feed/"><img style="border: medium none ; float: left; margin-right: 10px;" src="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" alt="Feed Icon" width="34" height="34" /></a>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-27-seit-heute-mit-neuerungen/734/#writecomment" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/wordpress-27-seit-heute-mit-neuerungen/734/feed/</wfw:commentRss>
		<slash:comments>25</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/wp-content/images/wp27/wp27-inbox.thumb.png" />
		<media:content url="http://bueltge.de/wp-content/images/wp27/wp27-inbox.thumb.png" medium="image">
			<media:title type="html">Die Oberfläche in der aktuellen Beta 2.7 in Bereich Inbox</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>
		<media:content url="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" medium="image">
			<media:title type="html">Feed Icon</media:title>
		</media:content>
	</item>
		<item>
		<title>WordCamp 2008 San Francisco, ein Einblick</title>
		<link>http://bueltge.de/wordcamp-2008-san-francisco-ein-einblick/723/</link>
		<comments>http://bueltge.de/wordcamp-2008-san-francisco-ein-einblick/723/#comments</comments>
		<pubDate>Mon, 18 Aug 2008 06:58:51 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Webküche]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WordCamp]]></category>
		<category><![CDATA[WP2.7]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=723</guid>
		<description><![CDATA[Am letzten Wochenende, dem 16. August, wurde das WordCamp in San Francisco veranstaltet. Der große Vorteil gegenüber anderen WordCamps - die Macher von bzw. die Köpfe hinter WordPress sind zugegen, zeigen Ziele und Umsetzungen, beantworten Fragen und stehen persönlich zu einem Gespräch vor Ort zur Verfügung. Diese Nähe wird wohl ein WordCamp in Deutschland nicht [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignrightob" src="http://bueltge.de/wp-content/images/wp/wordcamp_sf08.png" alt="WordCamp 2008 SF" /><br />
Am letzten Wochenende, dem 16. August, wurde das <a href="http://2008.sf.wordcamp.org/">WordCamp in San Francisco</a> veranstaltet. Der große Vorteil gegenüber anderen WordCamps - die Macher von bzw. die Köpfe hinter WordPress sind zugegen, zeigen Ziele und Umsetzungen, beantworten Fragen und stehen persönlich zu einem Gespräch vor Ort zur Verfügung. Diese Nähe wird wohl ein WordCamp in Deutschland nicht bieten, um so schöner, dass man einen umfassenden Einblick in die Veranstaltung bekommt - dazu den <a href="http://blogs.zdnet.com/weblife/?p=143">Artikel WordCamp 2008</a> im Blog von Andrew Mager lesen.</p>
<p>Die Entwickler und Nutzer geben eine ganze Reihe an Einblicken in die Roadmap, in die neue Oberflächenstudie <a href="http://bueltge.de/wordpress-prototype/682/">CrazyHorse</a> und viele Tools rund um WordPress. So soll beispielsweise <a href="http://www.buddypress.org/">BuddyPress</a> (<a href="http://buddypress.de/">BuddyPress DE</a>), dass Plugin, welches WordPress zu einer Social Plattform macht, Ende des Jahres in der Version 1.0 erscheinen. Ab dann kann man ernsthaft testen und mit wenig finanziellen Hintergrund eine Plattform für Communities schaffen.</p>
<p>Daher ein Lesetipp für alle WordPress-Interessierten und für die, die wissen wollen, was um WordPress passiert - <a href="http://blogs.zdnet.com/weblife/?p=143">WordCamp San Francisco 2008</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><a href="http://bueltge.de/feed/"><img style="border: medium none ; float: left; margin-right: 10px;" src="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" alt="Feed Icon" width="34" height="34" /></a>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/wordcamp-2008-san-francisco-ein-einblick/723/#writecomment" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/wordcamp-2008-san-francisco-ein-einblick/723/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/wp-content/images/wp/wordcamp_sf08.png" />
		<media:content url="http://bueltge.de/wp-content/images/wp/wordcamp_sf08.png" medium="image">
			<media:title type="html">WordCamp 2008 SF</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>
		<media:content url="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" medium="image">
			<media:title type="html">Feed Icon</media:title>
		</media:content>
	</item>
		<item>
		<title>WordPress 2.7 offline nutzen</title>
		<link>http://bueltge.de/wordpress-27-offline-nutzen/710/</link>
		<comments>http://bueltge.de/wordpress-27-offline-nutzen/710/#comments</comments>
		<pubDate>Mon, 11 Aug 2008 10:02:53 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Tipps]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Offline]]></category>
		<category><![CDATA[WP]]></category>
		<category><![CDATA[WP2.7]]></category>
		<category><![CDATA[WP2.8]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=710</guid>
		<description><![CDATA[Die kommende Version 2.7 von WordPress hat das viel erwünschte Core-Update drin. Schon jetzt kann man damit spielen und die Funktionen testen.
Allerdings will oder kann man nicht immer online arbeiten, daher hier ein kleiner Workaround, wie man trotzdem auf WordPress 2.7 Beta entwickeln kann.]]></description>
			<content:encoded><![CDATA[<p>Die kommende Version 2.7 von WordPress hat das viel erwünschte Core-Update drin. Schon jetzt kann man damit spielen und die Funktionen testen.<br />
Allerdings will oder kann man nicht immer online arbeiten, daher hier ein kleiner Workaround, wie man trotzdem auf WordPress 2.7 Beta entwickeln kann.<br />
<span id="more-710"></span><br />
Da man schon gar nicht in das Backend kommt, empfiehlt es sich die Hook-Aufrufe in <code>/wp-includes/update.php</code> auszukommentieren.</p>
<pre><code>
add_action( 'init', 'wp_version_check' );
...
add_action( 'load-plugins.php', 'wp_update_plugins' );
add_action( 'admin_init', '_maybe_update_plugins' );
</code></pre>
<p>Damit ist kommt man wieder in das Backend und kann ungestört arbeiten. Wer aber täglich bzw. des öfteren ein Update zieht, was bei der Verwendung aus dem SVN sinnvoll ist, der will sicher nicht ständig diesen Eintrag ändern.</p>
<p>Alternativ lohnt also ein Plugin. Eine einfache und schnelle Variante kann man sich im Anschluss kopieren und nutzen. Einfach in den Plugin-Ordner verschieben und im Backend aktivieren. Dann kann der Eingriff in der <code>update.php</code> wieder rückgängig gemacht werden und die Versionsprüfung erfolgt nicht.</p>
<pre><code>
&lt;?php
/**
 * @package WP Offline
 * @author Frank Bültge
 * @version 0.5
 */

/*
Plugin Name: WP Offline
Plugin URI: http://bueltge.de/wordpress-27-offline-nutzen/710/
Description: Deactivate autoupdate for core, plugins and themes
Version: 0.5
Author: Frank B&amp;uuml;ltge
Author URI: http://bueltge.de/
Last Change: 04.01.2011
*/

remove_action( 'admin_init', '_maybe_update_core' );
remove_action( 'wp_version_check', 'wp_version_check' );
wp_clear_scheduled_hook( 'wp_version_check' );

remove_action( 'load-plugins.php', 'wp_update_plugins' );
remove_action( 'load-update.php', 'wp_update_plugins' );
remove_action( 'load-update-core.php', 'wp_update_plugins' );
remove_action( 'admin_init', '_maybe_update_plugins' );
remove_action( 'wp_update_plugins', 'wp_update_plugins' );
wp_clear_scheduled_hook( 'wp_update_plugins' );

remove_action( 'load-themes.php', 'wp_update_themes' );
remove_action( 'load-update.php', 'wp_update_themes' );
remove_action( 'load-update-core.php', 'wp_update_themes' );
remove_action( 'admin_init', '_maybe_update_themes' );
remove_action( 'wp_update_themes', 'wp_update_themes' );
wp_clear_scheduled_hook( 'wp_update_themes' );

remove_action('init', 'wp_schedule_update_checks');
?&gt;
</code></pre>
<p>Kleines Update; mit Version 2.8 von WordPress werden auch die Themes auf Aktualität geprüft, daher habe ich die Syntax des Plugins erweitert und nun kann es auch unter 2.8 genutzt werden.<br />
Version 0.5 ist für 3.0 geeignet und ich habe wieder einige Anpassungen vorgenommen. In Zukunft werde ich via Github die aktuelle Version pflegen; bitte also dort schauen - <a href="https://github.com/bueltge/WP-Offline">https://github.com/bueltge/WP-Offline</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><a href="http://bueltge.de/feed/"><img style="border: medium none ; float: left; margin-right: 10px;" src="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" alt="Feed Icon" width="34" height="34" /></a>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-27-offline-nutzen/710/#writecomment" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/wordpress-27-offline-nutzen/710/feed/</wfw:commentRss>
		<slash:comments>5</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>
		<media:content url="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" medium="image">
			<media:title type="html">Feed Icon</media:title>
		</media:content>
	</item>
		<item>
		<title>WordPress Admin Theme Adminimize</title>
		<link>http://bueltge.de/wordpress-admin-theme-adminimize/674/</link>
		<comments>http://bueltge.de/wordpress-admin-theme-adminimize/674/#comments</comments>
		<pubDate>Wed, 18 Jun 2008 11:11:09 +0000</pubDate>
		<dc:creator>Frank Bültge</dc:creator>
				<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Themes]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Admin]]></category>
		<category><![CDATA[Theme]]></category>
		<category><![CDATA[WP]]></category>
		<category><![CDATA[WP2.5]]></category>
		<category><![CDATA[WP2.6]]></category>
		<category><![CDATA[WP2.7]]></category>

		<guid isPermaLink="false">http://bueltge.de/?p=674</guid>
		<description><![CDATA[WordPress besitzt seit Version 2.5 eine neuen Aufbau der Navigation und ein neues Design des Admin-Bereiches. Viele Nutzer und ich sind nicht sonderlich zufrieden mit dem Redesign. Ich arbeite aktuell an einer kleinen Umstrukturierung des Design, wobei es nicht um Farben und Stylesheet der puren Optik geht, sondern um die Umstrukturierung einiger Nutzerbereiche, vorrangig im Bereich Schreiben.]]></description>
			<content:encoded><![CDATA[<p><em>If you want the information in english - please have a look on <a href="http://wordpress.org/extend/plugins/adminimize/">this page</a>.</em></p>
<p>WordPress besitzt seit Version 2.5 eine neuen Aufbau der Navigation und ein neues Design des Admin-Bereiches. Viele Nutzer und ich sind nicht sonderlich zufrieden mit dem Redesign. Ich arbeite aktuell an einer kleinen Umstrukturierung des Design, wobei es nicht um Farben und Stylesheet der puren Optik geht, sondern um die Umstrukturierung einiger Nutzerbereiche, vorrangig im Bereich Schreiben.</p>
<p>Ich stelle die aktuellen Lösungen mal als Screenshot dar, erkläre die bisherigen Umsetzungen und wünsche mir, dass ich Feedback bekomme. Gibt es Wünsche, Ideen, die sinnvoll in diesem Theme wären? Bitte gebt mir Rückmeldungen.<br />
Wer das Plugin testet - es werden keine Informationen in der Datenbank gespeichert, Deaktivieren und löschen auf dem Server - damit ist alles gelöscht. Man kann also unbesorgt testen.</p>
<p><a title="Klick für Zoom" href="http://bueltge.de/wp-content/images/26_mw_adminimize.png"><img class="centered" src="http://bueltge.de/wp-content/images/26_mw_adminimize-thumb.png" alt="Screenshot MW Adminimize" /></a><br />
<span id="more-674"></span><br />
Das Stylesheet für das Admin-Menu kommt von <a href="http://meyerweb.com/">Eric Meyer</a>, der daraus das Plugin „<a href="http://meyerweb.com/eric/thoughts/2008/05/27/wordpress-adminimize-and-latest-tweet-plugins">MW Adminimize</a>“ gemacht hat. Mit diesen Design hat alles angefangen und ich danke <a href="http://meyerweb.com/">Eric</a> <strong>sehr</strong> für diese Idee und das CSS. Ohne das Plugin von <a href="http://meyerweb.com/">Eric</a> wären meine Stückellösungen sicher so geblieben.<br />
Nun waren mir aber die Umsetzung nicht weitreichend genug. In meiner Ideenschublade lagen schon so einige Entwürfe und nun habe ich das Plugin von <a href="http://meyerweb.com/">Eric</a> weiter ausgebaut. Dabei habe ich im CSS nur sehr wenige Erweiterungen hinzugefügt. Diese mussten sein, um die Umstrukturierung im Edit-Bereich sauber zu realisieren. Ideen kamen außerdem aus dem <a href="http://meganmcdermott.com/2008/05/11/new-wordpress-admin-panel/">Artikel von Megan</a>.</p>
<h3>Was macht das Plugin ?</h3>
<p>Das Plugin verändert das Backend und bringt Vergabe von Rechten für einzelne Bereiche mit. Administratoren können Menu- und Submenu-Punkte deaktivieren, Metaboxes getrennt nach Beiträgen und Seiten verwalten. Ebenso können Bereiche des <em>Schreiben</em>-Bereiches deaktiviert werden, alles getrennt nach Admin und anderen Rollen.<br />
Der Header im Backend wird kleiner und übersichtlicher gestaltet, ebenso ändern sich die Menupunkte und bringen mehr Logik in das Backend - alles userabhängig. Weiteres in einigen Stichpunkten</p>
<ul>
<li>Das Admin-Theme <em>Adminimize</em> ist benutzerabhängig nutzbar; Einzustellen bei den User-Einstellungen, pro User</li>
<li>Aktuell kann man das Theme in Zusammenhang mit den Farbwerten für Theme Fresh oder Classic nutzen</li>
<li>Das Erweitern um weitere Farben ist einfach möglich</li>
<li>Neuer Menu-Aufbau; im Linken Bereich findet man klassische Anwendungen zum Verwalten und Schreiben, während der rechte kleinere Bereich für Einstellungen, Design, Plugin und Benutzer-Bereiche vorgesehen ist</li>
<li>Dashboard verschoben; Der Link zum Dashboard ist in das Menu integriert und nicht mehr extra ersichtlich, alternativ kann deaktiviert werden.</li>
<li>Der Bereich im Menu ist schmaler und nimmt weniger Platz im Admin weg.</li>
<li>Bereich <strong>Schreiben</strong> mit folgenden Möglichkeiten verändert
<ul>
<li>Adminbereich kommt ohne fixe Breite aus und passt sich dem Browser an.</li>
<li>Scroll-Balken ist in allen Browsern immer da. Damit entfällt das Verschieben bei kleineren zu größeren Bereichen.</li>
<li>Kategorien sind im rechten Sidebar zu finden</li>
<li>Tags sind im rechten Sidebar (Kommt das Plugin „<a href="http://wordpress.org/extend/plugins/simple-tags">Simple Tags</a>“ zum Einsatz, dann gibt es keine Veränderung)</li>
<li>automatischer Scroll auf den Edit-Bereich, besonders sinnvoll bei wenig Platz im Browser</li>
<li>Media-Uploader nutzt nun den kompletten Bildschirm.</li>
<li>Unterstützung des „<a href="http://planetozh.com/blog/my-projects/wordpress-admin-menu-drop-down-css/">Plugins Admin Drop Down Menu</a>“; wenn das Plugin aktiv, dann steht dem User zwei weitere Designs zur Verfügung</li>
<li>Unterstützung des Plugin „<a href="http://www.italyisfalling.com/lighter-menus">Lighter Menus</a>“; wenn das Plugin aktiv, dann steht dem User zwei weitere Designs zur Verfügung</li>
<li>Zwei neue Farbschemas im Angebot<br />
<img class="centered" src="http://bueltge.de/wp-content/images/mw_adminimize_option.png" alt="Screenshot MW Adminimize Options" /></li>
<li>Breite des Sidebar ist nun verstellbar, es gibt 5 Werte (Standard, 300px, 400px, 30%, 30%)</li>
<li>Jede Meta-Box kann entfernt werden, getrennt für jede Userrolle</li>
<li>Ebenso können Bereiche entfernt werden, wie h2, Mitteilungen und die Info im Sidebar</li>
</ul>
</li>
<li>Bereich User_Info, rechts oben, kann verändert werden (Ausblenden oder nur Logout-Link)</li>
<li>Die Meta-Boxen im Bereich Schreiben können einzeln übergreifend deaktiviert werden, optional für Admins</li>
<li>Das Dashboard kann komplett aus dem Admin entfernt werden</li>
<li>Alle Menupunkte, auch Menus von Plugins, können getrennt für jede Rolle deaktiviert werden.</li>
<li>Design-Änderungen werden nur geladen, wenn sie auch benötigt werden, die meisten Lösungen also nur im Edit-Bereich.</li>
</ul>
<h3>Voraussetzungen</h3>
<p>Das Plugin funktioniert nur mit WordPress Version 2.5 oder höher, getestet bis 2.9-rare.</p>
<h4>Bereich Einstellungen</h4>
<p>Man kann jedes Feld im Menu getrennt für Administratoren und andere Userrollen konfigurieren und so den Adminbereich anpassen. Einen Einblick gibt der folgende Screenshot (für komplette Sicht klicken). Die Auswahl richtet sich nach den aktivierten Plugins und lernt mit.</p>
<p><a title="Klick für Zoom" href="http://bueltge.de/wp-content/images/adminimize-option.png"><img class="centered" src="http://bueltge.de/wp-content/images/adminimize-option2.png" alt="Screenshot Adminimize Optionen" /></a></p>
<h3>Eigene Optionen</h3>
<p><a title="Klick für Zoom" href="http://bueltge.de/wp-content/images/adminimize/adminimize-own-options.png"><img class="centered" src="http://bueltge.de/wp-content/images/adminimize/adminimize-own-options-thumb.png" alt="Screenshot Adminimize Eigene Optionen" /></a><br />
Das Plugin erlaubt das Hinzufügen von eigenen Optionen. Dazu muss im linken Feld ein Name pro Zeile und im rechten Feld die ID oder Klasse pro Zeile vergeben werden. Nach dem Speichern werden die neuen Optionen dann zu den User-Rollen hinzugefügt. Die Klasse oder ID eines Objektes im Backend von WordPress kann man am einfachsten im Firefox mit Hilfe des Add ons Firebug ermitteln. Eigene Optionen können nur mit Hilfe von CSS ausgeblendet werden.</p>
<h3>Hinweis</h3>
<p><a href="http://meyerweb.com/">Eric</a> will das Plugin eventuell weiter ausbauen, so dass ich meine Version hier zum Download anbiete. Eventuell können wir das Plugin auch weiterhin gemeinsam entwickeln und Neuerungen einfließen lassen.</p>
<h3>Installation</h3>
<ul>
<li>Die gepackte Datei downloaden und lokal entpacken</li>
<li>Die Dateien inkl. Ordner <em>adminimize</em> in dein Plugin-Verzeichnis kopieren (/wp-content/plugins/)</li>
<li>Aktivieren des Plugins im Adminbereich deines WP</li>
<li>übergreifende Einstellungen verändern &gt; Optionen &gt; Adminimize</li>
<li>Theme wählen &gt; Benutzereinstellungen, ist userabhängig</li>
</ul>
<h4>Hinweis Version 1.4</h4>
<p>Wenn das Update von einer Version &lt; 1.4 durchgeführt wird, dann bitte die Deinstallations-Funktion im Bereich Einstellungen des Plugins nutzen und die überflüssigen Datenbankeinträge damit entfernen. Ab Version 1.4 wird nur ein Eintrag gesetzt. Danach wieder neu aktivieren und alle Einstellungen neu setzen.</p>
<h3>Download:</h3>
<form class="spenden" action="https://www.paypal.com/cgi-bin/webscr" method="post"> <input id="eins" name="amount" type="hidden" value="1.00" /> <input name="cmd" type="hidden" value="_xclick" /> <input name="business" type="hidden" value="frank@bueltge.de" /> <input name="item_name" type="hidden" value="Spende bueltge.de - Adminimize" /> <input name="no_shipping" type="hidden" value="1" /> <input name="return" type="hidden" value="http://bueltge.de/" /> <input name="cancel_return" type="hidden" value="http://bueltge.de/" /> <input name="currency_code" type="hidden" value="EUR" /> <input name="tax" type="hidden" value="0" /> <input name="bn" type="hidden" value="PP-DonationsBF" /> <input style="border:0" alt="Zahlen Sie mit PayPal - schnell, kostenlos und sicher!" name="submit" src="http://bueltge.de/wp-content/images/donate.png" type="image" /></form>
<p><strong>Ist die Arbeit nicht 1 Euro wert?</strong><br />
Jede Spende wird dankbar angenommen und ermöglicht das weitere Arbeiten an freier Software.<br />
Möchtest du mehr oder anders spenden, so besuche meine <a href="http://bueltge.de/wunschliste/">Wunschliste</a>.</p>
<p>Download als zip-Datei (incl. Sprachfile de_DE, en_ES, pot-File, readme.txt): <a href="http://downloads.wordpress.org/plugin/adminimize.zip">downloads.wordpress.org/plugin/adminimize.zip</a> - ~200 kByte</p>
<h3 id="historie">Historie</h3>
<p>Seit geraumer Zeit bietet das WordPress Plugin Repository die Möglichkeit der Ausgabe des Changelog an und so werde ich direkt am Plugin, in der Readme die Historie pflegen - daher bitte ich, dass ihr euch dort die Änderungen anschaut, so dass ich ein wenig hier pflegen muss: <a href="http://wordpress.org/extend/plugins/adminimize/changelog/">Changelog</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><a href="http://bueltge.de/feed/"><img style="border: medium none ; float: left; margin-right: 10px;" src="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" alt="Feed Icon" width="34" height="34" /></a>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-admin-theme-adminimize/674/#writecomment" title="zu den Kommentaren dieses Artikels">Kommentieren</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bueltge.de/wordpress-admin-theme-adminimize/674/feed/</wfw:commentRss>
		<slash:comments>639</slash:comments>
	
		<media:thumbnail url="http://bueltge.de/wp-content/images/26_mw_adminimize-thumb.png" />
		<media:content url="http://bueltge.de/wp-content/images/26_mw_adminimize-thumb.png" medium="image">
			<media:title type="html">Screenshot MW Adminimize</media:title>
		</media:content>
		<media:content url="http://bueltge.de/wp-content/images/mw_adminimize_option.png" medium="image">
			<media:title type="html">Screenshot MW Adminimize Options</media:title>
		</media:content>
		<media:content url="http://bueltge.de/wp-content/images/adminimize-option2.png" medium="image">
			<media:title type="html">Screenshot Adminimize Optionen</media:title>
		</media:content>
		<media:content url="http://bueltge.de/wp-content/images/adminimize/adminimize-own-options-thumb.png" medium="image">
			<media:title type="html">Screenshot Adminimize Eigene Optionen</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>
		<media:content url="http://bueltge.de/wp-content/themes/black_label/images/rss.gif" medium="image">
			<media:title type="html">Feed Icon</media:title>
		</media:content>
	</item>
	</channel>
</rss>

