Für Menschen · Seien Sie begeistert und Sie werden begeistern !
Ein weitere Weblog von mir, der sich mit einem ganz anderen Thema beschäftigt, hatte die WordPress-Installation immer in einem Unterordner und es man kann eine statische Seite bauen und dann per php, meta oder JavaScript auf den Weblog verweisen. Schöner wäre es aber, wenn man dies direkt mit WordPress machen kann - und es geht.
Dazu sind nur kleine Veränderungen notwendig. Alle Arbeitsschritte sind im folgenden hinterlegt und ich persönlich empfinde sie besser als eine Weiterleitung mit Hilfe einer php- /html-Seite oder .htaccess .
require('./wp-blog-header.php'); in require('./wordpress/wp-blog-header.php');
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /wordpress/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wordpress/index.php [L]
</IfModule>
Achtung: Sicherung der Datenbank im Vorfeld anlegen.
Folgender Befehl ersetzt Zeichenketten:
UPDATE tabellenname SET feldname =
replace(feldname, suchstring, ersatzstring);
Nun die Tabellen _posts und _comments durchsuchen. In diesem Beispiel lief WordPress im Unterorder wordpress und somit müssen die Links um den Ordner wordpress gekürzt werden. Das kann natürlich mit jedem String gemacht werden.
UPDATE wp_posts SET post_content =
replace(post_content, 'http://example.de/wordpress/', 'http://example.de/');
UPDATE wp_comments SET comment_content =
replace(comment_content, 'http://example.de/wordpress/', 'http://example.de/');
bueltge.de [by:ltge.de] wird von Frank Bültge geführt, administriert und gestaltet. Alle Inhalte sind persönlich von mir ausgewählt und erstellt, nach bestem Gewissen und Können, was die Möglichkeit von Fehlern nicht ausschließt.
Das Weblog wird angetrieben von WordPress und aktuell gibt es 980 Beiträge, 18728 Kommentare in 14 Kategorien und 464 Tags.
Das Blog wird liebevoll mit xHTML & CSS in Handarbeit gestaltet. Erstellt mit ♥ zum Befüllen und Erhalten.
Design und Code ist unter Copyright
© 2001 - 2012 bueltge.de [by:ltge.de]
18. Februar 2007 um 16:15
Danke für den Tip. Wollte auch ein zweites Blog in einem Unterverzeichnis eröffnen. hast mir sehr geholfen
Gruß
19. Februar 2007 um 21:15
Hi Frank, ich habe das lokal(xampp) probiert, allerdings habe ich linkprobleme mit den stylesheets (extern und adminsystem). bloginfo('stylesheet_url') verweist dann auf root, nicht aufs blog, ebenso die links der einzubindenden .js files im adminbereich sind auch falsch.
26. Februar 2007 um 12:10
Habe es nie lokal geprüft, vielleicht liegt es an der Abfrage von WP, was ich mir aber eigentlich nicht vorstellen kann. Die Reihenfolge der Änderungen richtig eingehalten?
28. Februar 2007 um 14:57
@Micha: habe es unter WP 2.1.1 auch nochmal lokal (XAMPP) getestet, sogar ohne .htaccess, und läuft wunderbar.
26. Dezember 2009 um 17:25
Funktioniert das auch mit WordPress MU? Leider ließ sich MU nicht im Hauptverzeichnis installieren, daher hab ich es im Unterverzeichnis, nun hätte ich aber gerne das Unterverzeichnis aus der URL ausgeblendet, wie mache ich das? Wäre nett wenn du mir helfen könntest - Danke!
26. Dezember 2009 um 18:04
Hat sich erledigt. Zwar hat die Installation von WordPress MU im Hauptverzeichnis nicht funktioniert aber das Verschieben einer Installation aus einem Unterverzeichnis ins Hauptverzeichnis nachdem ich die Pfade in Datenbank und wp-config.php geändert habe.
28. Januar 2010 um 22:30
Vielen Dank, sehr hilfreich.
in der Tabelle "wp_posts" von WordPressMU gibt es neben der Spalte "post_content" noch eine "guid", in der ebenfalls alte URLs vorkommen. Wozu dient diese Spalte und muss man sie ebenfalls updaten?
Danke für die Hilfe.
29. Januar 2010 um 12:28
@Matt: nein, dort muss man nicht updaten, da das keine Links im Content sind, es sind die Links, mit denen WordPress arbeitet.
15. Februar 2010 um 17:48
Vielen Dank für die einfache Erklärung. Wegen der Übersichtlichkeit wollte ich es im Unterordner haben und bin schier verzweifelt. Dank der knackigen Anleitung hab ich es heute geschafft und dabei beschäftige ich mich erst seit einigen Wochen mit WordPress und dem Thema Blog und CMS generell.
Es macht aber sehr viel Spaß und ich lerne täglich dazu, nicht zuletzt durch Ihre Seite und Ihren sehr guten Anleitungen und Tips.
Grüße Micha
27. April 2010 um 14:30
Wie ist es wenn keine .htaccess - datei vorhanden ist ? und - Kopiere die index.php und die .htaccess aus dem bestehenden Blog auf lokal und öffne sie mit einem Editor - Ganz rauskopieren oder muss die index.php im alten Verzeichnisse auch bleiben ?
27. April 2010 um 16:17
Habe es so wie in der Anleitung gemacht und ...
Die style.css wird nicht übernommen und es ist nur noch die Startseite vom Blog erreichbar. )o:
Die Links werden zwar richtig angezeigt also so wie ich auch haben wollte aber naja !
27. April 2010 um 18:24
@Oliver: wenn das Design fehlt, dann stimmen die Pfade nicht.
28. April 2010 um 15:10
Ganz rauskopieren oder muss die index.php im alten Verzeichnisse auch bleiben ?
Gruss
28. April 2010 um 15:49
@OLiver: kopieren, nicht verschieben. Im Installationsverzeichnis von WP muss die index.php bleiben.
28. April 2010 um 16:35
Habe das Blog neu installier - Die index.php bearbeitet und ins Hauptverzeichnis kopiert - Habe im Blog die neuen Adressen eingegeben und übernommen - Habe bei united-domains.de "URL-HIDING (versteckte Weiterleitung)" gewählt - Habe über cwcity.de phpMyAdmin aufgerufen und habe die "siteurl" unter wp-options in die alte Adresse umgeändert !
Nun kann ich mich über die Subdomain von cwcity.de im Adminbereich einloggen ( keine weisse Seite mehr ) und das Blog wird über die Hauptdomain mit Unterverzeichnissen aufgerufen !
Bei "Umlaut-Domains" ist darauf zu achten das die "Blog-Adresse" in den Einstellungen im WordPress Adminbereich richtig angegeben wird !
Gruss
26. Februar 2011 um 10:43
Das funktioniert problemlos, allerdings habe ich einen unerwünschten Seiteneffekt - ich hoffe, ich kann es verständlich beschreiben:
* Ich habe parallel zum WordPress-Unterordner mehrere weitere (eine Joomla-Installation und eine Website mit statischem HTML). Es sind jeweils eigenständige Webauftritte, die über separate Domains aufgerufen werden.
* Nun wird neuerdings in Suchmaschinen z.B. eine Unterseite der Joomla-Site unter der URL der WordPress-Site gefunden:
http://www.texte-ulrike-schaefer.de/akw/.../xy.html.http://www.texte-ulrike-schaefer.deist die Domain der WordPress-Site, /akw/ der Unterordner der Joomla-Site.Das ist sehr störend, weil es sich inhaltlich, wie gesagt, um völlig getrennte Webauftritte handelt. Ich vermute, es kommt daher, dass die WordPress-Site-URL noch immer auf das Rootverzeichnis meines gesamten Internetpakets verweist (dort liegen dann .htaccess und index.php und lenken sozusagen erst im zweiten Schritt auf den WordPress-Unterordner um).
Mir ist nicht klar, wie ich diesen Effekt loswerden kann. Bin für Tipps dankbar.
Grüße
Ulrike
26. Februar 2011 um 16:12
Sorry, zu früh gefragt - nun hab ichs begriffen:
* In WordPress die Site-Adress auf die Domain setzen (nicht aufs Unterverzeichnis)
* Umleitung der Domain über Provider (bei mir strato) auf Unterverzeichnis
* im Unterverzeichnis .htaccess anpassen:
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
(Mir ist nicht so ganz klar, warum das nötig ist, aber danach hat es jedenfalls geklappt.)
* Mit Suche-Ersetze Bilder-Links anpassen, wie oben im Post beschrieben.
Auf diese Weise muss ich nichts WordPress-Spezifisches insRoot-Verzeichnis meines Pakets stellen. Das Problem mit den Suchmaschinen scheint dadurch behoben zu sein.
27. Februar 2011 um 18:28
Super - hat geklappt. Man muss nur strikt diese Reihenfolge einhalten, sonst sperrt man sich aus.
Auch Google rafft die Änderung nach kurzer Zeit. Perfekt.
Dieser Tipp ist Gold wert und gehört in die offiziellen FAQ - das braucht jeder!
Danke Frank!! Bin begeistert!
3. März 2011 um 12:05
Erst einmal vielen Dank an Frank für die schon so oft hilfreichen Tipps hier auf der Seite,
doch nun muß auch ich einmal persönlich posten und hoffe auf Hilfe.
Mein Sachstand 3sprachige CMS Webseite mit 1 Gästebuch mit Möglichkeit für Kommentare:
- WP3.0.5 Multiuser mit Hauptblog und 2 Unterblogs (= deutsch /de/ und englisch /en/)
- alle im Unterverzeichniss /worpress/ erfolgreich installiert und bis Punkt 4 der Anleitung auch gewünschtes erscheinen der url des Hauptblogs!!
Doch nun der Knackpunkt - irgendwie bekomm ich es nicht gebacken die url der Unterblogs "ohne" das /wordpress/ Verzeichnis erscheinen bzw. aufzurufen.
Bsp:
http.//www.beispiel.de/wordpress/home wurde zu http.//www.beispiel.de/home
http.//www.beispiel.de/wordpress/de/home soll zu
http.//www.beispiel.de/de/home werden
Welche Tabellen müssen denn dafür noch angepasst werde?
Bei den Permalinks kann ich ja ebenfalls nur das home ändern aber keinen weitern Pfad wie /wordpress/de/home
Wo ist denn mein Denkfehler oder geht das absolut nicht?
Ich hab schon so viel ausprobiert und wieder Rückgängig gemacht.
Ich hoffe einer von Euch hat einen Tipp?
sonnige Grüße
4. März 2011 um 09:50
Hi brauch dringend rat.
habe aus versehen diese Einstellung genau anderst rum gemacht.
"Im WP-Admin-Bereich unter Optionen --> Allgemein die Einstellung für die „Blog-Adresse (URL)“ auf das Root-Verzeichnis ändern -
http://example.de/- und die „WordPress-Adresse (URL)“ auf das Unterverzeichnis wordpress verweisen -http://example.de/wordpress/"Ich habe bei der WordPress Adresse das Verzeichnis raus genommen und bei Blog drin gelassen. Nun kann ich mich nicht mehr einloggen
Was soll ich machen?
7. März 2011 um 08:22
@Sasa: setze via Konstanten in der wp-config.php die urls, fertig.
7. März 2011 um 09:31
Danke für den Tipp, hat sich aber auch zwischenzeitlich erledigt.
Gruß
Sasa
7. Juni 2011 um 19:35
Hallo,
erstmal vielen Dank für die gute Beschreibung!
Zwischenzeitlich habe ich WP im Unterordner und kann es über die Domain aufrufen. Soweit hat alles gut geklappt.
Nun habe ich allerdings das Problem, dass ich die Permalinks einfach nicht geändert kriege. (Ich hätte gern /%postname%/, anstatt der Standardeinstellung.) Aber immer, wenn ich die Permalinkstruktur im Backende ändere, funktioniert hinterher das Design nicht mehr und ich kann dann auch das Blog nicht mehr öffnen. Hast du evtl. auch hierzu eine Lösung??? Das wäre extrem super! Ich kann nirgendwo eine Antwort auf diese Frage finden.
Danke und noch viel Erfolg
Petra
7. Juni 2011 um 22:10
@Petra: htaccess ist korrekt? eventuell stimmen die Adressen für home und siteurl nicht, mal in Tabelle options schauen oder die Werte direkt via Konstante in die wp-config schreiben.
30. Juni 2011 um 16:16
Hallo Frank,
vielen Dank für deine Antwort - die ich leider jetzt erst entdeckt habe (immer dieser Stress...
).
Also, da ich von diesem Part meiner "Arbeit" leider wenig Ahnung habe, schicke ich dir mal den Inhalt der .htacces-Datei mit:
# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
In der Datenbank unter wp-options steht site-url
http://ihr-wegweiser-zum-glueck.deund unter home steht dasselbe.Das Blog liegt allerdings im Unterverzeichnis "wordpress". Es ist trotzdem über die Hauptdomain aufzurufen, weil ich bei meinem Webhoster (alfahosting, falls das was zur Sache tut) eine Weiterleitung eingerichtet habe. Vielleicht liegt ja da das Problem? Vielleicht muss ich dann eine andere Einstellung... an welcher Stelle auch immer, machen?
Puh! Schwer kompliziert, wenn man immer nur so'n Halbwissen hat! Also, falls dir dazu irgendwas Kreatives einfallen sollte, wäre ich ausgesprochen froh!
Herzliche Grüße und einen schönen Abend.
Petra
PS: Jetzt lasse ich mich benachrichtigen, sobald eine Antwort kommt.
1. Juli 2011 um 11:19
@Petra: wenn du beim Webhoster die Weiterleitung aktiv hast, dann ist der ordner wordpress für WordPress schon das Root, du musst also nichts ändern
4. Juli 2011 um 06:42
Ich habe mir da nie Gedanken drum gemacht, da ich wusste, dass es funktioniert: Blog in Unterordner installieren und irgendwann später mit den erwähnten Umstellungen übers Root aufrufen. Jetzt habe ich ein Test-Blog in einem Unterordner installiert, das hauptsächlich aus Seiten besteht (nicht aus Artikeln). Manuell gesetzte Links auf andere Seiten des Blogs enthalten also jeweils den Unterordner in der URL. Das kriegt WordPress nicht automatisch gebacken, gell? Wie und wo ersetze ich diese Links?
4. Juli 2011 um 14:36
Hallo Frank,
ich kann leider immer noch keine Permalinks in die Form /%postname%/ ändern, ohne dass danach mein Blog nicht mehr aufzurufen ist. Muss ich in WordPress-Admin evtl. etwas anderes eingeben als lediglich /%postname%/? Muss ich irgendwo die Root angeben?
Herzliche Grüße
Petra
4. Juli 2011 um 23:12
@Petra: nein; wenn mod_rewrite aktiv ist, dann sollte es auch gehen.
5. Juli 2011 um 11:48
Hallo Frank,
1000 Dank! Da war der Fehler. mod_rewrite war nicht aktiv.
Herzliche Grüße
Petra
15. Juli 2011 um 09:53
Hallo Leute,
ich habe nach eurer Anleitung versucht auf den unterordner /wordpress/ zu zeigen. aber es geht einfach nicht..
bin so langsam echt verzweifelt...
ich schreibe euch mal was ich gemacht habe.. vllt fällt euch ja noch was ein oder auf..
die domain zeigt beim hoster (alfahosting) auf root. (hatte ich auch schon umgestellt auf /wordpress/ aber bringt auch nix)
im root liegen index.php und .htaccess. die habe ich ausm /wordpress/ verzeichnis kopiert und die index.php wie folgt angeglichen.
require('./wordpress/wp-blog-header.php');
bei der .htaccess bin ich mir nicht ganz sicher was ich machen soll... bei mir sieht sie jetzt so aus:
AddHandler x-httpd-php5 .php .php3 .php4 .php5
# BEGIN WordPress
RewriteEngine On
RewriteBase /wordpress/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wordpress/index.php [L]
# END WordPress
die dateien im /wordpress/ verzeichnis habe ich so gelassen wie sie waren..
unter myadmin habe ich die seiten so umgebogen wie es oben beschrieben wurde.. kam auch keine fehlermeldung von sql also denke ich, dass es so geklappt hat..
Warning: require_once(/var/www/web588/html/wp-load.php) [function.require-once]: failed to open stream: No such file or directory in /var/www/web588/html/wp-admin/admin.php on line 30
die fehlermeldung bekomme ich jetzt grade aktuell:
Fatal error: require_once() [function.require]: Failed opening required '/var/www/web588/html/wp-load.php' (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/web588/html/wp-admin/admin.php on line 30
24. September 2011 um 02:00
Hallo,
vielen Dank für den Artikel und die Informationen.
Ich habe es so gelöst, indem ich eine Subdomain nutze, die auf den Unterordner zeigt. Im root-Verzeichnis habe ich eine PHP-Umleitung eingerichtet, sodass die Subdomain geladen wird.
Würdest du mir lieber eine andere Herangehensweise empfehlen? Bis jetzt (ein paar Tage) hatte ich damit keine Probleme.
Danke und Gruß
DSIW
27. September 2011 um 08:37
@DSIW: wenn dann nimm lieber eine Weiterleitung via htacces oder Einstellung zum Server, php ist dafür weniger geeignet und ist langsamer.
27. Oktober 2011 um 19:09
Ähm könnte das ne lösung für mein Problem sein?
habe meinen 4ten multiside Blog mit statischer Frontpage
unter der domain
http://www.domain.deeingerichtet.Die Blog-Seite ist unter zu ereichen unter
http://www.domain.de/blogwenn ich jetzt auf einen Artikel klicke um diesen zu lesen passiert folgendes:
wwww.domain.de/%category%/%postname%/ (permalinks sind so gewollt)
es sollte aber so aussehen:
http://www.domain.de/blog/%category%/%postname%/kann ich das problem damit auch lösen, habe es bei allen Blog mit mit statischer Frontpage.
Danke im voraus.