<?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"
	>

<channel>
	<title>WordPress Deutschland FAQ</title>
	<atom:link href="http://faq.wordpress-deutschland.org/feed/" rel="self" type="application/rss+xml" />
	<link>http://faq.wordpress-deutschland.org</link>
	<description>Oft gestellte Fragen zu WordPress</description>
	<pubDate>Fri, 20 Jun 2008 07:29:01 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
	<language>en</language>
			<item>
		<title>Kategoriebasierte Permalinks und „/category/“ aus Post-URL entfernen</title>
		<link>http://faq.wordpress-deutschland.org/kategoriebasierte-permalinks-und-category-aus-post-url-entfernen/</link>
		<comments>http://faq.wordpress-deutschland.org/kategoriebasierte-permalinks-und-category-aus-post-url-entfernen/#comments</comments>
		<pubDate>Fri, 20 Jun 2008 07:23:46 +0000</pubDate>
		<dc:creator>Marcus</dc:creator>
		
		<category><![CDATA[Konfiguration]]></category>

		<category><![CDATA[Permalinks]]></category>

		<guid isPermaLink="false">http://faq.wordpress-deutschland.org/?p=54</guid>
		<description><![CDATA[WordPress-Permalinks
WordPress bietet die M&#246;glichkeit, sprechende URLs aus Kategorie- und Beitragsnamen zu erzeugen. Die Struktur der Permalink-URLs f&#252;r Blog-Artikel l&#228;sst sich im Backend auch sehr gut einstellen, zum Beispiel basierend auf Datum und Beitragstitel. Hier l&#228;sst sich sehr sch&#246;n eine zeitliche Hierarchie einrichten, wie hier dargestellt:

http://example.com/2008/06/23/mein-erster-beitrag/ -	Mein erster Beitrag (23.06.2008)
http://example.com/2008/06/23/	- Tagesarchiv: alle Artikel vom 23.06.2008
http://example.com/2008/06/	- Monatsarchiv: [...]]]></description>
			<content:encoded><![CDATA[<h4>WordPress-Permalinks</h4>
<p>WordPress bietet die M&#246;glichkeit, sprechende URLs aus Kategorie- und Beitragsnamen zu erzeugen. Die Struktur der Permalink-URLs f&#252;r Blog-Artikel l&#228;sst sich im Backend auch sehr gut einstellen, zum Beispiel basierend auf Datum und Beitragstitel. Hier l&#228;sst sich sehr sch&#246;n eine zeitliche Hierarchie einrichten, wie hier dargestellt:</p>
<ul>
<li>http://example.com/2008/06/23/mein-erster-beitrag/ -	Mein erster Beitrag (23.06.2008)</li>
<li>http://example.com/2008/06/23/	- Tagesarchiv: alle Artikel vom 23.06.2008</li>
<li>http://example.com/2008/06/	- Monatsarchiv: alle Artikel vom Juni 2008</li>
<li>http://example.com/2008/	- Jahresarchiv: alle Artikel des Jahres 2008</li>
</ul>
<p>F&#252;r pers&#246;nliche Blogs oder Blogs ohne tiefere Struktur sind diese Permalinks sicher sehr gut, zumal man hier sofort das Datum des Artikels sieht.</p>
<h4>Kategoriebasierte Permalinks</h4>
<p>Leider ist diese Struktur nicht f&#252;r jede WordPress-Website geeignet. Viele WordPress-Nutzer wollen ihre Website klar strukturieren, zum Beispiel mittels Kategorien und Unterkategorien. Hierzu kann man zum Beispiel folgende benutzerdefinierte Permalink-Struktur f&#252;r die Blogartikel einstellen:<br />
<code>/%category%/%postname%</code><br />
Hier werden die Permalinks f&#252;r Blogartikel zum Beispiel so generiert:</p>
<ul>
<li>http://example.com/meine-hauptkategorie/mein-erster-beitrag/</li>
</ul>
<p>Auch Kategoriehierarchien mittels Ober- und Unterkategorien ist so m&#246;glich und sieht dann zum Beispiel so aus:</p>
<ul>
<li>http://example.com/meine-hauptkategorie/meine-unterkategorie/mein-erster-beitrag/</li>
</ul>
<h4>Nachteile und Probleme kategoriebasierter Permalinks</h4>
<p>Leider funktioniert hier aber die URL-Hierarchie wie bei den datumsbasierten Permalinks nicht mehr, ein Link auf:</p>
<ul>
<li>http://example.com/meine-hauptkategorie/</li>
</ul>
<p>w&#252;rde ins Leere f&#252;hren. Standardm&#228;&#223;ig wird Kategorie-URLs ein „/category/ vorangesetzt:</p>
<div class="codesnip-container">http://example.com/category/meine-hauptkategorie/</div>
<p>Abgesehen davon, dass dies f&#252;r deutschsprachige Seiten unsch&#246;n aussieht, wird so auch die URL so unn&#246;tig verl&#228;ngert und es wird ein Element eingef&#252;gt, welches in den Artikel-URLs nicht mehr vorhanden ist. Die URL-Struktur der Seite wird also inkonsistent.</p>
<h4>Abhilfe: die Permalink-Option „Kategorie-Basis“</h4>
<p>Hier kommt jetzt die Permalink-Option „Kategorie-Basis“ ins Spiel. Hier kann man eine eigene URL-Basis f&#252;r die Kategorie-URLs festlegen. Um das Wort „category“ zum Beispiel einzudeutschen, k&#246;nnte man hier „/kategorie/“ eintragen. Das &#228;ndert aber nichts daran, dass die URL-Struktur inkonsistent wird. Mit einem kleinen Trick kann man aber die Kategoriebasis aus der URL entfernen. Man tr&#228;gt einfach einen Verweis auf das eigene Verzeichnis ein:<br />
<code>./</code></p>
<p>Dieser Trick funktioniert, allerdings sind einige Seiteneffekte zu beachten, auf die ich im folgenden kurz eingehen m&#246;chte.</p>
<h4>Seiteneffekt 1: „./“ in URLs</h4>
<p>WordPress generiert die Links im HTML-Quelltext wie folgt:</p>
<ul>
<li>http://example.com/./meine-hauptkategorie/</li>
<li>http://example.com/./meine-hauptkategorie/meine-unterkategorie/</li>
</ul>
<p>Alle mir bekannten Browser sowie die gro&#223;en Suchmaschinen interpretieren das „./“ in den Kategorie-URLs korrekt und haben keine Probleme diesen Verweisen zu folgen. Die meisten Browser und Suchmaschinen-Roboter entfernen den (eigentlich &#252;berfl&#252;ssigen) Verweis auf das aktuelle Verzeichnis aus der URL, und zeigen die URL in der Adressleiste, Statuszeile oder in Tooltips ohne das „./“ an:</p>
<ul>
<li>http://example.com/meine-hauptkategorie/</li>
<li>http://example.com/meine-hauptkategorie/meine-unterkategorie/</li>
</ul>
<p>Lediglich &#228;ltere Internet Explorer belassen die URLs wie sie sind. Es handelt sich aber h&#246;chstens um einen kleinen Sch&#246;nheitsfehler, da auch diese Browser problemlos mit diesen Links klar kommen und die gew&#252;nschte Kategorie aufrufen.</p>
<h4>Seiteneffekt 2: Probleme bei gleichnamigen statischen Seiten</h4>
<p>WordPress bietet mit Bordmitteln keine M&#246;glichkeit, die Permalinkstruktur von statischen Seiten (im Sinne von WordPress) zu beeinflussen. WordPress-Seiten haben immer folgende URL-Struktur:</p>
<ul>
<li>http://example.com/hauptseite/unterseite/</li>
</ul>
<p>Wenn man nun eine statische Seite und eine Kategorie hat, die beide den gleichen Titel besitzen, dann h&#228;tten beide dieselbe URL:</p>
<ul>
<li>http://example.com/mein-toller-titel/ - URL der Seite mit dem Titel „Mein toller Titel“</li>
<li>http://example.com/./mein-toller-titel/ - URL der Kategorie mit dem Titel „Mein toller Titel“</li>
</ul>
<p>Da der Punkt „.“ auf das aktuelle Verzeichnis verweist sind beide URLs also &#228;quivalent. Da aber 2 verschiedene Ressourcen (Webseiten) aber nicht dieselbe URL haben k&#246;nnen gibt es hier offensichtlich Probleme. Gleichnamige Kategorien und statische Seiten muss man bei der Kategoriebasis „./“ also vermeiden. Es gen&#252;gt dass der URL-Name (engl. „Post Slug“) unterschiedlich ist, diesen kann man beim Anlegen der Seite bzw. Kategorie bequem &#228;ndern.</p>
<h4>Seiteneffekt 3: Artikel-Permalinks</h4>
<p>Der Trick mit „./“ funktioniert nur, wenn man die Permalinkstruktur der Blogartikel so einstellt, dass sie mit /%category%/ beginnen, und zus&#228;tzlich die Artikel-ID mittels %post_id% enthalten. Eine funktionierende Permalinkstruktur f&#252;r Artikel w&#228;re also z.B. die folgende:<br />
<code>/%category%/%post_id%-%postname%</code><br />
Eine Permalinkstruktur, die die Artikel-ID enth&#228;lt hat aber den Nachteil, dass s&#228;mtliche URLs, die die ID enthalten, auf den Artikel mit dieser ID verweisen. Es droht unter Umst&#228;nden doppelter Inhalt (engl. „duplicate content“, „DC“). Ein Beispiel f&#252;r die oben genannte Permalinkstruktur:</p>
<ul>
<li>http://example.com/meine-kategorie/123-mein-toller-titel/</li>
<li>http://example.com/meine-kategorie/123-mein-titel/</li>
<li>http://example.com/meine-kategorie/123-mein-toller/</li>
<li>http://example.com/meine-kategorie/123-mei&#8230;tel/</li>
</ul>
<p>Diese URLs verweisen alle auf den selben Artikel. Auftreten kann das Problem, wenn jemand mit einer falschen, aber nach der o.g. Permalinkstruktur formal g&#252;ltigen URL auf den Artikel verlinkt. Allerdings unterst&#252;tzt WP ab Version 2.3 kanonische URLs und leitet „falsche“ Artikel-URLs auf den korrekten URL weiter. In der Praxis sollte dieses Problem daher keine Rolle spielen.</p>
<p>Abschlie&#223;end m&#246;chte ich noch auf einen Thread im Forum hinweisen, der diese Problematik zum Thema hat: <a href="http://forum.wordpress-deutschland.org/konfiguration/32318-url-category.html">http://forum.wordpress-deutschland.org/konfiguration/32318-url-category.html</a></p>
<p>Danke an alle, die in diesem Thread mit ihren Erfahrungen und Hinweisen geholfen haben. Ganz speziellen Dank an <a href="http://www.putzlowitsch.de/">Ingo</a> f&#252;r die vielen Tests und Hinweise.</p>
<p>Auch auf das Plugin <a href="http://fortes.com/projects/wordpress/top-level-cats/">„Top Level Categories“</a> m&#246;chte ich noch hinweisen, manche WordPresser haben allerdings von Problemen mit diesem Plugin seit WP 2.5 berichtet.</p>
]]></content:encoded>
			<wfw:commentRss>http://faq.wordpress-deutschland.org/kategoriebasierte-permalinks-und-category-aus-post-url-entfernen/feed/</wfw:commentRss>
		</item>
		<item>
		<title>WordPress sicherer machen</title>
		<link>http://faq.wordpress-deutschland.org/wordpress-sicherer-machen/</link>
		<comments>http://faq.wordpress-deutschland.org/wordpress-sicherer-machen/#comments</comments>
		<pubDate>Sun, 20 Jan 2008 21:32:32 +0000</pubDate>
		<dc:creator>jottlieb</dc:creator>
		
		<category><![CDATA[Allgemeines]]></category>

		<guid isPermaLink="false">http://faq.wordpress-deutschland.org/wordpress-sicherer-machen/</guid>
		<description><![CDATA[Von blogsecurity.net gibt es eine Anleitung, wie man WordPress auf diversen Wegen sicherer machen kann.
Die deutsche &#220;bersetzung des Whitepapers kann als PDF-Datei (690 KB) heruntergeladen werden.
&#196;hnliche Tipps gibt auch Frank B&#252;ltge in seinem Artikel WordPress sicherer machen.
Einer der wichtigsten Tipps lautet: Immer die aktuelleste Version von WordPress verwenden. Auch Plugins sollten aktuell gehalten werden.
]]></description>
			<content:encoded><![CDATA[<p>Von <a href="http://blogsecurity.net/">blogsecurity.net</a> gibt es eine <a href="http://blogsecurity.net/wordpress/wordpress-security-whitepaper/">Anleitung</a>, wie man WordPress auf diversen Wegen sicherer machen kann.<br />
Die deutsche &#220;bersetzung des Whitepapers kann als <a href="http://blogsecurity.net/projects/secure-wp-whitepaper-de.pdf">PDF-Datei (690 KB) heruntergeladen werden</a>.</p>
<p>&#196;hnliche Tipps gibt auch Frank B&#252;ltge in seinem Artikel <a href="http://wordpress-buch.bueltge.de/wordpress-sicherer-machen/30/">WordPress sicherer machen</a>.</p>
<p>Einer der wichtigsten Tipps lautet: Immer die aktuelleste Version von WordPress verwenden. Auch Plugins sollten aktuell gehalten werden.</p>
]]></content:encoded>
			<wfw:commentRss>http://faq.wordpress-deutschland.org/wordpress-sicherer-machen/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Was sind die Upgradepakete und wann kann ich sie benutzen?</title>
		<link>http://faq.wordpress-deutschland.org/upgradepakete/</link>
		<comments>http://faq.wordpress-deutschland.org/upgradepakete/#comments</comments>
		<pubDate>Fri, 14 Sep 2007 18:31:22 +0000</pubDate>
		<dc:creator>jottlieb</dc:creator>
		
		<category><![CDATA[Installation]]></category>

		<category><![CDATA[WordPress Deutschland Dienste]]></category>

		<guid isPermaLink="false">http://faq.wordpress-deutschland.org/upgradepakete/</guid>
		<description><![CDATA[Mit fast jeder neuen WordPress-Version, bieten wir auf WordPress Deutschland auch ein Upgradepaket an.
Diese Pakete sind dazu gedacht, um direkt und leicht von der davor aktuellen, zur nun neuesten Version upgraden zu k&#246;nnen. Also z.B. von Version 2.2.2 auf Version 2.2.3.
Die Upgradepakete identisch zur ebenfalls immer angebotenen &#8220;Vollversion&#8221;, mit jedoch einem gro&#223;en Unterschied - sie [...]]]></description>
			<content:encoded><![CDATA[<p>Mit fast jeder neuen WordPress-Version, bieten wir auf WordPress Deutschland auch ein Upgradepaket an.</p>
<p>Diese Pakete sind dazu gedacht, um direkt und leicht von der davor aktuellen, zur nun neuesten Version upgraden zu k&#246;nnen. Also z.B. von Version 2.2.2 auf Version 2.2.3.</p>
<p>Die Upgradepakete identisch zur ebenfalls immer angebotenen &#8220;Vollversion&#8221;, mit jedoch einem gro&#223;en Unterschied - sie enthalten <strong>nur die ge&#228;nderten Dateien</strong>.
</p>
<p>Der Sinn dieser Pakete liegt also nur in der Ersparnis von Dateivolumen. Man muss weniger runterladen und auch weniger hochladen - f&#252;r eine insgesamt schnellere Update-Prozedur. Und der Profi sieht auf dem ersten Blick, welche Dateien ge&#228;ndert wurden. Das kann n&#252;tzlich sein, falls er einige der Systemdateien von WordPress ge&#228;ndert hat.</p>
<p>Mit der &#8220;Vollversion&#8221; der jeweiligen Version ist deshalb genauso gut und unproblematisch ein Upgrade m&#246;glich - nur dass eben auch Dateien ersetzt und erneuert werden, die sich garnicht ver&#228;ndert haben.</p>
<p><strong>Es sei an dieser Stelle deutlich darauf hingewiesen, dass man f&#252;r gr&#246;&#223;ere Versionsspr&#252;nge (z.B. von 2.1 auf 2.2.3) deshalb immer mit der Vollversion upgraden sollte und nicht f&#252;nf Upgradepakete hintereinander verwendet.</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://faq.wordpress-deutschland.org/upgradepakete/feed/</wfw:commentRss>
		</item>
		<item>
		<title>WordPress trotz Installation in Unterverzeichnis &#252;ber Hauptverzeichnis aufrufen</title>
		<link>http://faq.wordpress-deutschland.org/wordpress-trotz-installation-in-unterverzeichnis-ueber-hauptverzeichnis-aufrufen/</link>
		<comments>http://faq.wordpress-deutschland.org/wordpress-trotz-installation-in-unterverzeichnis-ueber-hauptverzeichnis-aufrufen/#comments</comments>
		<pubDate>Wed, 25 Apr 2007 15:10:42 +0000</pubDate>
		<dc:creator>jottlieb</dc:creator>
		
		<category><![CDATA[Konfiguration]]></category>

		<guid isPermaLink="false">http://faq.wordpress-deutschland.org/wordpress-trotz-installation-in-unterverzeichnis-ueber-hauptverzeichnis-aufrufen/</guid>
		<description><![CDATA[Will man WordPress (der Ordnung halber) in einem Unterverzeichnis, z.B. example.com/wordpress installieren, aber trotzdem direkt &#252;ber example.com aufrufen, so sind dazu ein paar Schritte n&#246;tig, die in diesem Artikel erl&#228;utert werden.
Die Beschreibung geht &#252;brigens von einer existierenden Installation aus, die sich bisher im Hauptverzeichnis befindet. Aber es macht in dem Sinne auch keinen Unterschied, wenn [...]]]></description>
			<content:encoded><![CDATA[<p>Will man WordPress (der Ordnung halber) in einem Unterverzeichnis, z.B. <em>example.com/wordpress</em> installieren, aber trotzdem direkt &#252;ber <em>example.com</em> aufrufen, so sind dazu ein paar Schritte n&#246;tig, die in diesem Artikel erl&#228;utert werden.</p>
<p>Die Beschreibung geht &#252;brigens von einer existierenden Installation aus, die sich bisher im Hauptverzeichnis befindet. Aber es macht in dem Sinne auch keinen Unterschied, wenn der Blog schon in einem Unterverzeichnis installiert wurde.</p>
<ol>
<li>Belasse die Dateien und Ordner erstmal so, wie sie sind. Das Verschieben erfolgt sp&#228;ter.</li>
<li>Gebe in <code>Adminbereich &gt;&gt; Einstellungen &gt;&gt; Allgemein &gt; WordPress-Adresse (URL):</code> die (neue) Adresse zu den WordPress-Dateien mit Unterverzeichnis an. In diesem Beispiel also <em>http://example.com/wordpress</em>.</li>
<li>Gebe in <code>Adminbereich &gt;&gt; Einstellungen &gt;&gt; Allgemein &gt; Blog-Adresse (URL):</code> die (neue) Adresse zum Blog ohne Unterverzeichnis an. In diesem Beispiel also <em>http://example.com</em>. &#220;ber diese Adresse soll dein Blog sp&#228;ter aufgerufen werden.</li>
<li>Klicke auf <strong>Einstellungen aktualisieren</strong>.</li>
<li>Logge dich nun via FTP-Programm auf deinem Webserver ein verschiebe alle (!) zu WordPress dazugeh&#246;rigen Dateien und Ordner in das neue Verzeichnis (welches bei WordPress-Adresse angegeben wurde). In diesem Fall also das Verzeichnis <em>/wordpress/</em>.<br />
Und <em>alles</em> meint wirklich alles, inklusive den Dateien (wie <em>wp-config.php </em>etc.) die nicht in den Ordnern <em>/wp-admin/</em>, <em>/wp-content/</em>, <em>/wp-admin/</em> usw. liegen.</li>
<li>Kopiere die <strong>index.php</strong> und, falls vorhanden, <strong>.htaccess</strong> aus deinem neuen WordPress-Verzeichnis (hier <em>/wordpress</em>) in das Hauptverzeichnis/Stammverzeichnis deines Webspaces, also dem, was du bei <em>Blog-Adresse (URL)</em> angegeben hast.</li>
<li>&#214;ffne diese ins Hauptverzeichnis kopierte <strong>index.php</strong> mit einem Texeditor (<em>Microsoft Word</em> ist keiner).</li>
<li>&#196;ndere folgende Zeile: <code>require('./wp-blog-header.php');</code> Es muss das Verzeichnis eingetragen werden in dem nun die WordPress-Dateien liegen.<br />
In diesem Beispiel also zu:<br />
<code>require('./wordpress/wp-blog-header.php');</code></li>
<li>Nun ist dein Blog wieder erreichbar. Logge dich ins Adminmen&#252; ein und aktualisiere, falls vorhanden, die Permalinks:<br />
<code>Adminbereich &gt;&gt; Einstellungen &gt;&gt; Permalinks &gt; Permalink-Struktur aktualisieren</code><br />
Falls WordPress wegen <a href="http://faq.wordpress-deutschland.org/die-datei-ist-derzeit-leider-nicht-beschreibbar-wie-andern/">fehlender Dateirechte</a> die <strong>.htaccess </strong>nicht beschreiben konnte, so kannst du die angezeigten &#196;nderungen auch manuell in die Datei eintragen.</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://faq.wordpress-deutschland.org/wordpress-trotz-installation-in-unterverzeichnis-ueber-hauptverzeichnis-aufrufen/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Wie kann ich bestimmte Seiten von der Auflistung ausschlie&#223;en?</title>
		<link>http://faq.wordpress-deutschland.org/exclude-pages/</link>
		<comments>http://faq.wordpress-deutschland.org/exclude-pages/#comments</comments>
		<pubDate>Sat, 17 Feb 2007 11:43:05 +0000</pubDate>
		<dc:creator>jottlieb</dc:creator>
		
		<category><![CDATA[Themes und Design]]></category>

		<guid isPermaLink="false">http://faq.wordpress-deutschland.org/wie-kann-ich-bestimmte-seiten-von-der-auflistung-ausschliesen/</guid>
		<description><![CDATA[In diesem Artikel werden drei M&#246;glichkeiten beschrieben, Seiten von der Auflistung auszuschlie&#223;en.
Die erste Methode ist die empfohlene, da sie die offizielle ist - allerdings muss man hierf&#252;r Hand am Code seines Themes anliegen.
Die zweite Methode w&#228;re die Benutzung eines Plugins.
Die dritte Methode setzt weder Plugins, noch Codever&#228;nderung vorraus, ist allerdings das vermutlich nicht so gedachte [...]]]></description>
			<content:encoded><![CDATA[<p>In diesem Artikel werden drei M&#246;glichkeiten beschrieben, Seiten von der Auflistung auszuschlie&#223;en.<br />
Die <a href="#excludecode">erste Methode</a> ist die empfohlene, da sie die <em>offizielle</em> ist - allerdings muss man hierf&#252;r Hand am Code seines Themes anliegen.<br />
Die <a href="#excludeplugin">zweite Methode</a> w&#228;re die Benutzung eines Plugins.<br />
Die <a href="#excludeprivat">dritte Methode</a> setzt weder Plugins, noch Codever&#228;nderung vorraus, ist allerdings das vermutlich nicht so gedachte Ausnutzen von programmtechnischen Gegegenheiten.
</p>
<h4 id="excludecode">Den Parameter exclude nutzen</h4>
<p>Um im Blog alle statischen Seiten aufzulisten, benutzt nahezu jedes Theme den Template Tag <em>wp_list_pages</em> (Infos dazu in der <a href="http://doku.wordpress-deutschland.org/Template_Tags/wp_list_pages">Doku</a>).</p>
<p>Will man nicht, dass bestimmte Seiten aufgelistet werden, so bietet der Parameter <em>exclude</em> die entsprechende M&#246;glichkeit dazu.</p>
<p>Als erstes musst du herausfinden, wo bei deinem Theme der Code <code>&lt;?php wp_list_pages('parameter'); ?&gt;</code> zu finden ist. Nutze dazu einen Texteditor oder den Theme-Editor im Adminmen&#252;. Beachte, dass der Inhalt in der Klammer je nach Theme variiert.<br />
Meistens wird man in der <strong>sidebar.php</strong> f&#252;ndig, manchmal auch in der <strong>header.php</strong>, <strong>index.php</strong>, <strong>footer.php</strong> oder <strong>functions.php</strong> - es h&#228;ngt vom jeweiligen Theme ab.</p>
<p>Die weitere Vorgehensweise h&#228;ngt davon ab, ob die Klammer <em>leer</em> ist, also keine Parameter eingetragen sind, oder ob schon Anweisungen vorhanden sind.<br />
Ist also die Klammer leer, dann sieht der Code so aus:<br />
<code>&lt;?php wp_list_pages(); ?&gt;</code><br />
In diesem Fall gen&#252;gt es, in die Klammer <code>'exclude=bla'</code> einzutragen, wobei <em>bla</em> f&#252;r die Seiten-ID steht. Mehrere IDs werden einfach durch ein Komma - ohne Leerzeichen - getrennt.<br />
Die Seiten-IDs findest du &#252;brigens hier angezeigt:<br />
<code>Adminbereich &gt;&gt; Verwalten &gt;&gt;  Seiten</code></p>
<p>Willst du also die Seiten mit der ID 2, 10 und 22 von der Auflistung ausschlie&#223;en, dann muss der gesamte Code so aussehen:<br />
<code>&lt;?php wp_list_pages('exclude=2,10,22'); ?&gt;</code></p>
<p>Sind Bereits Parameter vorhanden, so musst vor dem schlie&#223;enden Apostroph in der Klammer folgenden Schnipsel einf&#252;gen:<br />
<code>&#038;exclude=bla</code><br />
Das <strong>&#038;</strong> ist &#252;brigens wichtig, da es die unterschiedlichen Parameter von einander trennt. <em>bla</em> steht selbstredend wieder f&#252;r die Seiten-IDs.<br />
Auch hier ein Beispiel:<br />
<code>&lt;?php wp_list_pages('title_li=&lt;h2&gt;Seiten&lt;/h2&gt;'); ?&gt;</code><br />
wird zu <code>&lt;?php wp_list_pages('title_li=&lt;h2&gt;Seiten&lt;/h2&gt;&#038;exclude=2,10,22'); ?&gt;</code>
</p>
<p>Will man stattdessen generell alle Unterseiten (ab einer bestimmten Ebene) ausschlie&#223;en, so wird dazu in gleicher Weise der Parameter <em>depth</em> anstatt <em>exclude</em> verwendet:<br />
<code>depth=-1</code> zeigt keine Unterseiten.<br />
<code>depth=2</code> zeigt Unterseiten bis zu einer Ebene unter der &#252;bergeordneten Seite.<br />
<code>depth=3</code> zeigt Unterseiten bis zu zwei Eben unter der &#252;bergeordneten Seite.</p>
<h4 id="excludeplugin">Auschlie&#223;en via Plugin</h4>
<p>Will man das Ausschlie&#223;en von Seiten etwas einfacher gestalten, so kann man sich auch das Plugin <a href="http://www.texto.de/texto/statische-seiten-bequem-im-admincenter-ausschliessen-page-link-manager/">Page Link Manager</a> anschauen (und benutzen).</p>
<h4 id="excludeprivat">Seiten mittels des Status &#8220;privat&#8221; verstecken</h4>
<p>Diese M&#246;glichkeit macht sich den Umstand zu nutze, dass als <em>privat</em> markierte Seiten nicht in der Seitenauflistung (und auch so nicht) angezeigt werden und diese Eigenschaft auch auf untergeordnete Seiten &#252;bertragen wird - obwohl diese nicht auf <em>privat</em> gesetzt sind.</p>
<p>Erstelle also eine neue, leere Seite und w&#228;hle in der rechten Box <strong>Status</strong> die Eigenschaft <em>privat</em>.<br />
Der Inhalt privater Seiten kann nicht eingesehen oder aufgerufen werden - au&#223;er du bist als Administrator eingeloggt. Dementsprechend werden sie auch nie aufgelistet.</p>
<p>Die Seiten, die nun nicht angezeigt, aber aufgerufen k&#246;nnen werden sollen, werden als Unterseite dieser privaten Seite konfiguriert.<br />
Bearbeite dazu einfach die bereits vorhandene Seite (oder erstelle eine neue, falls n&#246;tig) und w&#228;hle in der Box <strong>&#220;bergeordnete Seite</strong> die auf <em>privat</em> gesetzte Seite. Der Status der zu versteckenden Seiten bleibt auf <em>ver&#246;ffentlicht</em>!<br />
Das war es schon.</p>
]]></content:encoded>
			<wfw:commentRss>http://faq.wordpress-deutschland.org/exclude-pages/feed/</wfw:commentRss>
		</item>
		<item>
		<title>»Fatal error: Allowed memory size of *** bytes exhausted…« ?</title>
		<link>http://faq.wordpress-deutschland.org/exhausted-php-memory/</link>
		<comments>http://faq.wordpress-deutschland.org/exhausted-php-memory/#comments</comments>
		<pubDate>Thu, 15 Feb 2007 20:50:53 +0000</pubDate>
		<dc:creator>jottlieb</dc:creator>
		
		<category><![CDATA[Allgemeines]]></category>

		<guid isPermaLink="false">http://faq.wordpress-deutschland.org/exhausted-php-memory/</guid>
		<description><![CDATA[Scheinbar urpl&#246;tzlich kann es vorkommen, dass eine Fehlermeldung wie diese erscheint:
Fatal error: Allowed memory size of 654321 bytes exhausted (tried to allocate 12345 bytes) in /srv/www/user/bla/blub/file.php on line 123
Die Werte f&#252;r die Bytes, vorkommende Datei und Codezeile sind dabei beliebig.
Was aber bedeutet diese Fehlermeldung, die direkt vom Server kommt?
Bei PHP gibt es in der Konfiguration [...]]]></description>
			<content:encoded><![CDATA[<p>Scheinbar urpl&#246;tzlich kann es vorkommen, dass eine Fehlermeldung wie diese erscheint:</p>
<blockquote><p>Fatal error: Allowed memory size of 654321 bytes exhausted (tried to allocate 12345 bytes) in /srv/www/user/bla/blub/file.php on line 123</p></blockquote>
<p>Die Werte f&#252;r die Bytes, vorkommende Datei und Codezeile sind dabei beliebig.<br />
Was aber bedeutet diese Fehlermeldung, die direkt vom Server kommt?</p>
<p>Bei PHP gibt es in der Konfiguration einen Wert <em>memory_limit</em>. Dieser Wert definiert den maximal erlaubten Speicherplatzverbrauch (im Arbeitsspeicher) eines PHP-Scripts. Dies soll den Server davor bewahren, dass ein schlecht oder fehlerhaft programmiertes Script den Arbeitsspeicher &#8220;auffrisst&#8221;.</p>
<p>Erscheint also in deinem Blog die Fehlermeldung, dann will das WordPress (inklusiver seiner Plugins) mehr Speicher f&#252;r sich reservieren, als ihm zusteht.<br />
Speicherfresser gibt es viele. So kann es sein, dass du in deinem Blog einfach zu viele (speicherhungrige) Plugins laufen hast, deine Galerie gerade zuviele Thumbnails auf einmal erzeugen will (und dazu je erstmal ein gro&#223;es Bild laden muss) oder eine Anweisung zuviele Beitr&#228;ge auf einmal verarbeiten will - soll hei&#223;en: Es gibt nicht <em>den</em> &#220;belt&#228;ter, den man beseitigen kann.</p>
<p>Durch testweises Abschalten von Plugins kann man jedoch versuchen, besonders speicherhungrige Plugins ausfindig zu machen und sie ggf. durch ein &#228;hnliches Plugin ersetzen oder auf ihren Einsatz verzichten.</p>
<p>Manchmal scheint es auch vorzukommen, dass die deutsche Sprachdatei den Fehler erzeugt. Dies kannst du pr&#252;fen, in dem du in der <strong>wp-config.php</strong> Die Zeile <code>define ('WPLANG', 'de_DE');</code> mit der Zeile <code>define ('WPLANG', '');</code> ersetzt.</p>
<p>Es gibt allerdings Webhoster, bei denen das <em>memory_limit</em> unn&#246;tig/ungew&#246;hnlich niedrig gesetzt ist.<br />
Du solltest dich also ruhig mit Verweis auf die bei dir auftretende Fehlermeldung, an deinen Webhoster wenden und fragen, ob es m&#246;glich w&#228;re, den Wert des <em>memory limits</em> in der php.ini zu erh&#246;hen.<br />
Im Zweifelsfall bleibt dann nur ein Hosterwechsel &#252;brig.</p>
<p>Bevor du dich allerdings an deinen Hoster wendest, kannst du auch versuchen, den Wert selber zu erh&#246;hen.<br />
&#214;ffne dazu deine <strong>wp-config.php</strong> und schreibe in den Anfang der Datei (nach <code>&lt;?php</code>) folgenden Code:<br />
<code>@ini_set("memory_limit",'32M');</code><br />
und speichere die &#196;nderung.
</p>
<p>Solltest du bei STRATO hosten, so d&#252;rfte <a href="http://forum.wordpress-deutschland.org/konfiguration/16970-wordpress-2-1-und-memory-allocation-error-bei-strato.html">dieser</a> Forenbeitrag interessant f&#252;r dich sein.</p>
]]></content:encoded>
			<wfw:commentRss>http://faq.wordpress-deutschland.org/exhausted-php-memory/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Wie finde ich heraus welche MySQL-Version ich habe?</title>
		<link>http://faq.wordpress-deutschland.org/wie-finde-ich-heraus-welche-mysql-version-ich-habe/</link>
		<comments>http://faq.wordpress-deutschland.org/wie-finde-ich-heraus-welche-mysql-version-ich-habe/#comments</comments>
		<pubDate>Tue, 23 Jan 2007 19:25:15 +0000</pubDate>
		<dc:creator>Olaf</dc:creator>
		
		<category><![CDATA[Allgemeines]]></category>

		<guid isPermaLink="false">http://faq.wordpress-deutschland.org/wie-finde-ich-heraus-welche-mysql-version-ich-habe/</guid>
		<description><![CDATA[WordPress ben&#246;tigt ab 2.1 mindestens MySQL ab Version 4.0. Um herauszufinden welche Version auf dem eigenen Webhost installiert ist, einfach den folgenden Code in einen Texeditor kopieren, als &#8220;mysql-version.php&#8221; speichern, auf den Webspace &#252;bertragen und im Browser aufrufen.
&#60;?php printf("MySQL-Version: %s\n", mysql_get_client_info()); ?&#62;
]]></description>
			<content:encoded><![CDATA[<p>WordPress ben&#246;tigt ab 2.1 mindestens MySQL ab Version 4.0. Um herauszufinden welche Version auf dem eigenen Webhost installiert ist, einfach den folgenden Code in einen Texeditor kopieren, als &#8220;mysql-version.php&#8221; speichern, auf den Webspace &#252;bertragen und im Browser aufrufen.</p>
<pre><code>&lt;?php printf("MySQL-Version: %s\n", mysql_get_client_info()); ?&gt;</code></pre>
]]></content:encoded>
			<wfw:commentRss>http://faq.wordpress-deutschland.org/wie-finde-ich-heraus-welche-mysql-version-ich-habe/feed/</wfw:commentRss>
		</item>
		<item>
		<title>WordPress-Installation automatischen sichern und upgraden</title>
		<link>http://faq.wordpress-deutschland.org/wordpress-installation-automatischen-sichern-und-upgraden/</link>
		<comments>http://faq.wordpress-deutschland.org/wordpress-installation-automatischen-sichern-und-upgraden/#comments</comments>
		<pubDate>Sun, 21 Jan 2007 19:34:45 +0000</pubDate>
		<dc:creator>jottlieb</dc:creator>
		
		<category><![CDATA[Installation]]></category>

		<guid isPermaLink="false">http://faq.wordpress-deutschland.org/wordpress-installation-automatischen-sichern-und-upgraden/</guid>
		<description><![CDATA[Alex G&#252;nsche hat das Plugin WP-Manage geschrieben, welches ein komplettes Backup der WordPress-Installation samt Datenbank erstellt und au&#223;erdem in der Lage ist, WordPress automatisch auf die jeweils neueste Version upzugraden.
Die Backup-Routine erstellt einen MySQL-Dump der WordPress-Tabellen in der Datenbank, erstellt eine Liste alle WordPress-Dateien und packt alles zusammen in ein Zip-Archiv, das man dann bequem [...]]]></description>
			<content:encoded><![CDATA[<p>Alex G&#252;nsche hat das Plugin <a href="http://www.zirona.com/software/wp-manage" target="_blank">WP-Manage</a> geschrieben, welches ein komplettes Backup der WordPress-Installation samt Datenbank erstellt und au&#223;erdem in der Lage ist, WordPress automatisch auf die jeweils neueste Version upzugraden.</p>
<blockquote><p>Die Backup-Routine erstellt einen MySQL-Dump der WordPress-Tabellen in der Datenbank, erstellt eine Liste alle WordPress-Dateien und packt alles zusammen in ein Zip-Archiv, das man dann bequem herunterladen kann. Das Upgrade l&#228;dt die neuste WordPress-Version runter, entpackt sie, l&#246;scht die alten WP-Dateien und installiert die neuen. Anschlie&#223;end wird das Upgrade-Script ausgef&#252;hrt. F&#252;r all das werden keine besonderen PHP-Erweiterungen etc. ben&#246;tigt, sondern WP-Manage bringt alle n&#246;tigen Werkzeuge selbst mit.</p>
<p>Das Backup und das Upgrade arbeiten unabh&#228;ngig voneinander.</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://faq.wordpress-deutschland.org/wordpress-installation-automatischen-sichern-und-upgraden/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Wie kann ich im Standard DE-Theme (Kubrick) immer die vollst&#228;ndige Sidebar anzeigen lassen?</title>
		<link>http://faq.wordpress-deutschland.org/kubrick-vollstaendige-sidebar/</link>
		<comments>http://faq.wordpress-deutschland.org/kubrick-vollstaendige-sidebar/#comments</comments>
		<pubDate>Thu, 18 Jan 2007 11:36:14 +0000</pubDate>
		<dc:creator>jottlieb</dc:creator>
		
		<category><![CDATA[Themes und Design]]></category>

		<guid isPermaLink="false">http://faq.wordpress-deutschland.org/wie-kann-ich-im-standard-de-theme-kubrick-immer-die-vollstandige-sidebar-anzeigen/</guid>
		<description><![CDATA[Wer das WordPress Standard DE-Edition-Theme bzw. Kubrick benutzt, der hat es vielleicht schon gemerkt - bei Einzelartikel- oder Archiv/Kategorieansicht fehlen Inhalte der Sidebar.
F&#252;r die entsprechende &#196;nderung ist es n&#246;tig, an den Template-Dateien des Themes Hand anzulegen.
Diese Dateien mit der Endung .php findest du in deiner Wordpress-Installation in folgendem Ordner:
/wp-content/themes/default_de/

Bearbeiten kannst du die Theme-Dateien im Theme-Editor [...]]]></description>
			<content:encoded><![CDATA[<p>Wer das <em>WordPress Standard DE-Edition</em>-Theme bzw. <em>Kubrick</em> benutzt, der hat es vielleicht schon gemerkt - bei Einzelartikel- oder Archiv/Kategorieansicht fehlen Inhalte der Sidebar.</p>
<p>F&#252;r die entsprechende &#196;nderung ist es n&#246;tig, an den Template-Dateien des Themes Hand anzulegen.<br />
Diese Dateien mit der Endung .php findest du in deiner Wordpress-Installation in folgendem Ordner:<br />
<code>/wp-content/themes/default_de/</code>
</p>
<p>Bearbeiten kannst du die Theme-Dateien im Theme-Editor des Adminmen&#252;s, wof&#252;r es notwendig ist, per FTP-Programm den Dateien im Theme-Ordner die Rechte (chmod) <strong>666</strong> zu verleihen.<br />
Alternativ kannst du auch dein Theme offline &#228;ndern und dann die ver&#228;nderten Dateien auf deinen Webspace &#252;bertragen, wodurch die alten Dateien &#252;berschrieben werden (ggf. <strong>Backup anlegen</strong>!).<br />
Etwaige Zeilenangaben beziehen sich auf das unmodifizierte Theme in Version DE 1.6.
</p>
<p>Zuerst ist die <strong>sidebar.php</strong> an der Reihe.<br />
In Zeile 55 muss folgender Code entfernt werden:<br />
<code>&lt;?php /* If this is the frontpage */ if ( is_home() || is_page() ) { ?&gt;</code><br />
Und in Zeile 70 ist dieser Befehl zu entfernen:<br />
<code>&lt;?php } ?&gt;</code></p>
<p>Nun erscheint auch in den Archivseiten die vollst&#228;ndige Sidebar.<br />
Will man in der Artikelansicht die Sidebar anzeigen (die sonst vollst&#228;ndig fehlt), so muss man die <strong>single.php</strong> des Themes l&#246;schen (es wird dann die index.php des Themes genutzt) oder sich die <strong>single.php</strong> wie folgt vorkn&#246;pfen:<br />
In Zeile 3 ersetzt man<br />
<code>&lt;div id=&quot;content&quot; class=&quot;widecolumn&quot;&gt;</code><br />
mit diesem Code:<br />
<code>&lt;div id=&quot;content&quot; class=&quot;narrowcolumn&quot;&gt;</code>
</p>
<p>Anschlie&#223;end f&#252;gt man in Zeile 65 <strong>VOR</strong><br />
<code>&lt;?php get_footer(); ?&gt;</code><br />
diesen Code hinzu:<br />
<code>&lt;?php get_sidebar(); ?&gt;</code><br />
so dass die letzten beiden Zeilen so aussehen:<br />
<code>&lt;?php get_sidebar(); ?&gt;<br />
&lt;?php get_footer(); ?&gt;</code></p>
<p>Zum Schluss ist noch ein Eingriff in die <strong>header.php</strong> des Themes von N&#246;ten.<br />
Ab Zeile 17 muss der folgende Code:<br />
<code>&lt;?php<br />
// Checks to see whether it needs a sidebar or not<br />
if ( !$withcomments &amp;&amp; !is_single() ) {<br />
?&gt;<br />
	#page { background: url(&quot;&lt;?php bloginfo('stylesheet_directory'); ?&gt;/images/kubrickbg.jpg&quot;) repeat-y top; border: none; }<br />
&lt;?php } else { // No sidebar ?&gt;<br />
	#page { background: url(&quot;&lt;?php bloginfo('stylesheet_directory'); ?&gt;/images/kubrickbgwide.jpg&quot;) repeat-y top; border: none; }<br />
&lt;?php } ?&gt;</code><br />
mit diesem Code ersetzt werden (bis WP 2.1.3):<br />
<code>	#page { background: url(&quot;&lt;?php bloginfo('stylesheet_directory'); ?&gt;/images/kubrickbg.jpg&quot;) repeat-y top; border: none; }</code><br />
Beziehungsweise diesem Code, wenn man ein neueres Kubrick (ab WordPress 2.2) einsetzt:<br />
<code>	#page { background: url(&quot;&lt;?php bloginfo('stylesheet_directory'); ?&gt;/images/kubrickbg-ltr.jpg&quot;) repeat-y top; border: none; }</code>
</p>
<p>
Prinzipiell funktioniert die Sache auch bei anderen Themes die ein &#228;hnliches Verhalten zeigen - dort reicht meist der Eingriff in der sidebar.php.</p>
]]></content:encoded>
			<wfw:commentRss>http://faq.wordpress-deutschland.org/kubrick-vollstaendige-sidebar/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Mehrere WordPress-Installationen automatisch aktualisieren (via shell)</title>
		<link>http://faq.wordpress-deutschland.org/mehrere-wordpress-installationen-automatisch-aktualisieren/</link>
		<comments>http://faq.wordpress-deutschland.org/mehrere-wordpress-installationen-automatisch-aktualisieren/#comments</comments>
		<pubDate>Fri, 12 Jan 2007 15:28:22 +0000</pubDate>
		<dc:creator>jottlieb</dc:creator>
		
		<category><![CDATA[Installation]]></category>

		<guid isPermaLink="false">http://faq.wordpress-deutschland.org/mehrere-wordpress-installationen-automatisch-aktualisieren/</guid>
		<description><![CDATA[Die folgende Anleitung stammt von Alex G&#252;nsche - vielen Dank!
Achtung! Bitte den Code lesen! Erst ausf&#252;hren, wenn man verstanden hat, was hier passiert.
Backups sind Pflicht. Der Autor &#252;bernimmt keine Gew&#228;hr f&#252;r etwaige Fehler.
Wenn man einen virtuellen oder dedizierten Root-Server hat, kann man ein kleines Bash-Script benutzen, um mehrere WordPress-Installationen automatisch zu aktualisieren. Das ganze passiert [...]]]></description>
			<content:encoded><![CDATA[<p>Die folgende Anleitung stammt von <a href="http://www.zirona.com">Alex G&#252;nsche</a> - vielen Dank!</p>
<p>Achtung! Bitte den Code lesen! Erst ausf&#252;hren, wenn man verstanden hat, was hier passiert.<br />
Backups sind Pflicht. Der Autor &#252;bernimmt keine Gew&#228;hr f&#252;r etwaige Fehler.</p>
<p>Wenn man einen virtuellen oder dedizierten Root-Server hat, kann man ein kleines Bash-Script benutzen, um mehrere WordPress-Installationen automatisch zu aktualisieren. Das ganze passiert nat&#252;rlich auf der Kommandozeile (bash).</p>
<p>
<pre class="alt2" style="margin:0px; padding:0px; border:1px inset; width:640px; height:498px; overflow:auto">
<div dir="ltr" style="text-align:left;"><code>
#!/bin/bash

# Copyright (c) 2007 Alex Guensche http://www.zirona.com
#
# Permission is hereby granted, free of charge, to any person
# obtaining a copy of this software and associated documentation
# files (the "Software"), to deal in the Software without
# restriction, including without limitation the rights to use,
# copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the
# Software is furnished to do so, subject to the following
# conditions:
#
# The above copyright notice and this permission notice shall be
# included in all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
# OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
# HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
# WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
# OTHER DEALINGS IN THE SOFTWARE.

# where are working data stored
WORKDIR="/root/wpupgrade/"

# a file with the absolute path to the WordPress installation and the URL
# to the website, both separated only by an equation mark, no other characters
# example lines in that file:
# /var/www/example.org/htdocs/blog/=http://example.org/blog/
# /var/www/localhost/htdocs/=http://127.0.0.1/
WPDIRS_FILE="${WORKDIR}installations"

# derive the affected WP installations from that file
WPDIRS=$(cat ${WPDIRS_FILE})

# WordPress website and path to download package
WORDPRESS="http://www.wordpress.org/"

# download package file name
LATEST="latest.tar.gz"

# script to call in order to finish the upgrade
UPGRADESCRIPT="wp-admin/upgrade.php?step=1"

# get it on
cd ${WORKDIR}

# remove old versions
[ -e "wordpress" ] &#038;&#038; rm -r wordpress
[ -e "latest.tar.gz" ] &#038;&#038; rm latest.tar.gz

# get latest version, unpack and prepare
wget ${WORDPRESS}${LATEST}
tar -xzf $LATEST
rm -r wordpress/wp-content
rm -r wordpress/wp-config-sample.php
[ -d "languages" ] &#038;&#038; cp -r languages wordpress/wp-includes

# upgrade each webhost
for i in ${WPDIRS}; do

	DIR=$(echo $i | cut -f 1 -d &#8220;=&#8221;)
	WEBSITE=$(echo $i | cut -f 2 -d &#8220;=&#8221;)
	USER=$(ls -l ${DIR}/wp-config.php | cut -f 3 -d &#8216; &#8216;)
	GROUP=$(ls -l ${DIR}/wp-config.php | cut -f 4 -d &#8216; &#8216;)

	echo &#8220;Upgrading WP installation in ${DIR} for host ${WEBSITE}&#8230;&#8221;
	echo -n &#8220;Do you have backups and want to continue? [y/N] &#8221;
	read DOITBABY
	[ "${DOITBABY}" == "y" ] || exit

	cd $DIR;
	echo &#8220;Upgrading&#8230;&#8221; > index.html
	mv wp-content wordpress_content
	mv wp-config.php wordpress_config.php
	rm -r wp-* xmlrpc.php index.php

	cp -r ${WORKDIR}/wordpress/* .
	mv wordpress_content wp-content
	mv wordpress_config.php wp-config.php

	wget &#8220;${WEBSITE}${UPGRADESCRIPT}&#8221; -O -
	chown -R ${USER}:${GROUP} ${DIR}
	rm index.html

	echo &#8220;Upgrade for ${DIR} finished.&#8221;
done

</code></div>
</pre>
<p><strong>Benutzung:</strong>
<ol>
<li>Als Root anmelden und nach /root/ wechseln</li>
<li>Ein Verzeichnis namens <em>wpupgrade</em> anlegen</li>
<li>In das Verzeichnis <em>wpupgrade</em> wechseln und das obige Script dort speichern</li>
<li>Das Script mit chmod +x ausf&#252;hrbar machen</li>
<li>Empfohlen: Ein Verzeichnis <em>languages</em> mit allen ben&#246;tigten Sprachdateien anlegen</li>
<li>Eine Datei <em>installations</em> anlegen, in das zeilenweise der absolute Verzeichnispfad sowie die Web-URL getrennt durch ein Gleichheitszeichen eingegeben werden (keine Leer- oder sonstige Zeichen!). Bspw.: </li>
</ol>
<p><code>/var/www/example.org/htdocs/blog/=http://example.org/blog/<br />
/var/www/localhost/htdocs/=http://127.0.0.1/</code></p>
<p>Wenn man dann das obige Script ausf&#252;hrt, werden alle in <em>installations</em> aufgef&#252;hrten WordPress-Installationen automatisch aktualisiert.</p>
]]></content:encoded>
			<wfw:commentRss>http://faq.wordpress-deutschland.org/mehrere-wordpress-installationen-automatisch-aktualisieren/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
