It is very common that we want to change our WordPress URL. For example when moving from development stage to final public release.
WordPress makes an intense use of serialize in order to make array persistent in the database. Serialization converts Arrays to Strings and stores some information the Array, such as the length of each value. If we make a massive URL update with the new URL we may look our plugins stop working, sidebar disappearing, widgets not showing and other kind of settings not working.
After several migrations I have made a tiny script that fixes this issue. The script searchs for serialized settings inside the wp_options table, it unserializes and replaces the old URL for the new one and updates this option.
[Read more…] about WordPress: Broken plugins, missing sidebar and widgets gone after migration