Wordpress umziehen - Theme Options werden nicht übernommen

  • Hallo,
    ich ziehe Wordpress Seiten von einem Server mit einer anderen Domain bis jetzt immer so um:
    1. Alle Dateien vom FTP auf die Festplatte übertragen.
    2. Datenbank per phpMyAdmin exportieren in sql-Datei.
    3. sql-Datei auf dem PC öffnen und die Domain ersetzen.
    4. Alle Daten per FTP auf den neuen Server laden, wp-config anpassen.
    5. Datenbank per phpMyAdmin in neue Datenbank importieren.

    Manche Themes haben nun Einstellmöglichkeiten (Theme Options), die nie mit übernommen werden. Wieso? Wer kann mir einen Tipp geben?

    Beste Grüße!

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • genau das gleiche Problem habe ich auch.
    Zusätzlich werden bei mir diverse Plugin Einstellungen nicht übernommen, welche ich mühevoll konfiguriert habe (z.B.: nggalery)
    Die meisten Theme und Plugin Einstellungen werden ja in der Datenbank in der Tabelle 'wp_options' gesichert.
    Nach dem Umzug habe ich dann nochmals manuell die entsprechenden Einträge in der 'wp_options' geupdatet. Aber sobald ich dann von dem jeweiligen Plugin den Adminbereich im Browser aufrufe, wird der entsprechende DB Eintrag mit Default Werten überschrieben. *ichkönntausrasten* :-x

    Einmal editiert, zuletzt von rgb_freak (16. Januar 2013 um 12:22)

  • Meiner Meinung nach muss bei diesem System die Schutzkopie der sql Datei mit angepasst werden da die ganzen Links nicht mehr stimmen. Wurde früher z.B. ein Smiley aus Monalisa Addon von der URL

    http://www.ALTEDOMAIN.de/wp/AddOns/monalise/winken.gif
    eingebunden so muss der Link nun heissen
    http://www.NEUEDOMAIN.de/wp/AddOns/monalise/winken.gif

    Ähnlich wird es mit den Theme Einstellungen sein.

    Also SQL Datei Editieren :

    SUCHEN NACH : http://www.ALTEDOMAIN.de
    Ersetzen mit :http://www.NEUEDOMAIN.de

    dann neu Einlesen und es sollte fluppen.

    Gruß Ralf. ----- Homepage

  • SUCHEN NACH : http://www.altedomain.de
    Ersetzen mit :http://www.neuedomain.de

    dann neu Einlesen und es sollte fluppen.

    leider nicht. so gehe ich sowieso immer vor.
    alles andere ist ja auch funktionsfähig. grafiken usw. laden auch.
    in meinem fall überschreibt das wordpress system nach dem umzug die datenbank mit defaultwerten von den plugins. als ob man die plugins frisch installiert hätte.

    aber von den themes her kenne ich diese problematik auch. im aktuellen fall hab ich ein selbsterstelltes theme. aber sobald man ein theme benutzt, das einstellungsmöglichkeiten über das backend hat wie etwa twenty elven, werden diese auch zurückgesetzt.

    Einmal editiert, zuletzt von rgb_freak (16. Januar 2013 um 15:37)

  • @ RGB Freak

    Nein ich bin kein MOD hier, aber wirklich die Bitte, für Dein Problem ein anderes Thema zu eröffnen. Bei der Anfrage von Netzlichter könnte ich mir vorstellen, dass das Problem mit den Links ein heißer Tipp ist. Euch beiden würde ich raten euch das Add On :

    WordPress Importer

    mal anzuschauen. Das setzt allerdings voraus, dass die Datenbank auf dem "alten" Server noch aufliegt.

    Gruß Ralf

    Gruß Ralf. ----- Homepage

  • Ralf70, ja du bist kein MOD hier ;) Ich bin davon überzeugt, dass ich das gleiche Problem habe, da von uns beiden die Daten an der selben Stelle korrumpiert werden.

    Das Add On das du da empfiehlst, dient nur folgenden Dingen:

    Zitat
    • Posts, pages and other custom post types
    • Comments
    • Custom fields and post meta
    • Categories, tags and terms from custom taxonomies
    • Authors

    und nicht für Theme oder Plugin Einstellungen. Außerdem unterstützt es nicht Version 3.5
    Aber trotzdem danke für deine Hilfe :)

  • Selbes Problem habe ich auch öfters.
    Habe mir allerdings die entsprechenden Einstellungen noch nie in den DB-Tabellen angeschaut.

    Wenn man aber z.b. bei OptionTree oder den WooThemes die Einstellungen exportiert, scheinen diese Verschlüsselt zu sein.

  • Ne. Sicher bin ich mir nicht.
    Wie gesagt. Ich hab da noch nie in die DB Einträge geschaut.

    Aber ein Export bei OptionTree (also über die Export-Funktion des Plugins bringt z.b. einen solchen String :

    YToyOntzOjE2OiJqYWhyZXNwbGFuZXJfcGRmIjtzOjU3OiJodHRwOi8vZ21rLXJlaXNlbi5jaC93cC1jb250ZW50L3VwbG9hZHMvamFocmVzcGxhbmVyMS5wZGYiO3M6MTg6Im1zX2RldXRzY2hsYW5kX3BkZiI7czowOiIiO30=

  • ja, ist ein serialisierter array. da stimmen die werte. aber sobald ich im backend die administration des themes/plugins aufrufe, wird der datenbank eintrag mit default werten des jeweiligen theme/plugin überschrieben -.-

  • So.
    Jetzt mal geschaut.

    Nehmen wir mal ein kleines Array das wir serialisieren :

    Raus kommt folgendes

    Code
    a:3:{s:15:"Sport und Spiel";s:23:"http://sportundspiel.de";s:5:"Sport";s:15:"http://sport.de";s:4:"Welt";s:14:"http://welt.de";}

    Hier wird also auch die länge der Zeichenkette abgespeichert.
    Meine Vermutung nun. Wenn sich die Länge der Zeichenkette ändern, läuft die Funktion zum Umwandeln des Strings in ein Array zurück auf einen Hammer und gibt NULL zurück.

  • Yep. Genau das wars.

    Zum nachvollziehen.

    Code
    $string = 'a:3:{s:15:"Sport und Spiel";s:23:"http://sportundspiel.de";s:5:"Sport";s:15:"http://sport.de";s:4:"Welt";s:14:"http://welt.de";}';
    $zurueck = unserialize($string);
    echo '<br>';
    var_dump($zurueck);

    Das klappt.
    Nun änder ich aber "Sport und Spiel" ab auf "Sport und Spiel geändert".

    Code
    $string = 'a:3:{s:15:"Sport und Spiel geändert";s:23:"http://sportundspiel.de";s:5:"Sport";s:15:"http://sport.de";s:4:"Welt";s:14:"http://welt.de";}';
    $zurueck = unserialize($string);
    echo '<br>';
    var_dump($zurueck);

    Rückgabe ist false.
    Passe ich nun noch die Anzahl der Zeichen an, dann klappt es wieder.

    Code
    $string = 'a:3:{s:24:"Sport und Spiel geändert";s:23:"http://sportundspiel.de";s:5:"Sport";s:15:"http://sport.de";s:4:"Welt";s:14:"http://welt.de";}';
    $zurueck = unserialize($string);
    echo '<br>';
    var_dump($zurueck);

    Einmal editiert, zuletzt von fuhrmara (16. Januar 2013 um 17:29)

  • uuuuh, da muss man erst mal drauf kommen :)
    aber eigentlich ja logisch und eigentlich von den pluginentwicklern total dämlich, dass die in ihren einstellungen mit absoluten pfadangaben referenzieren *kopf -> tisch*

    also vielen dank für deine hilfe. :)

  • Das mit den serialisierten Arrays und den Angaben der Länge der Strings in den Serialisierten Domains war der springende Punkt! Jetzt läuft die Installation problemlos!!! :|

    Leider funktioniert folgendes Schema nicht

    Ich habe insgesamt 189 Ersetzungen im Dump vornehmen müssen. Und davon waren ca. 20 in serialisierten Arrays. Aber es ist ja nicht immer so, dass nur die Domain als String gespeichert ist, sondern viel häufiger ist der Fall, dass die Domain in einem String eines serialisierten Domains vorkommt. Also muss man schauen, was die Differenz der Zeichenanzahl von der alten zur neuen Domain ist und diese Differenz dann dementsprechend auf die Angabe der Stringlänge hinzufügen oder abziehen.

    Man muss also ziemlich genau schauen, was man gerade macht (und man sollte auch wissen was man tut). Das wäre es ja schon fast mal Wert, ein Plugin dafür zu coden^^

    Aber vielen Dank nochmals für den entscheidenden Tipp. Also du das erwähnt hast, ist es mir selbst wie Schuppen von den Augen gefallen...

  • Ralf70: pssst. Aber trotzdem Danke.

    rgb_freak: Danke, dass du deinen Senf dazu gegeben hast. Hatte mich schon gewundert, dass keiner mit dem gleichen Phänomen zu kämpfen hatte. Hat die Ursache schnell enttarnt.

    fuhrmara: Dir ein dickes Danke für die "Lösung" des Problems. Bei großen Themes ist es natürlich sehr umständlich das händisch zu ändern. Also entweder einer entwickelt dafür mal etwas (ich kann es schon mal nicht) oder ich stelle die Optionen nach dem Umzug einfach wieder ein ;).

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!