I was previously hosted on the Deluxe Legacy Linux hosting plan which only supports PHP 5.x. This presented multiple problems, including performance (and potential security) issues. I went ahead and purchased the Deluxe cPanel hosting plan and started migrating my multiple hosted domains. Got all the domains configured. The biggest issue I am unable to fix is with WordPress, and I am at a loss after 3 days of troubleshooting. Here is what I have found:
1. Changed PHP to 7.2 on the cPanel plan
2. Restored MySQL DB from the Legacy plan to cPanel
3. Edited the wp-config.php file to point the DB host from DBNAME.db.##.hostedresource.com to localhost
4. Went to the WP site and get "The site is experiencing technical difficulties."
Looked at various WordPress.org forums and other sites, pointing to a multitude of potential issues, including file/folder permissions, Theme and Plugin problems.
5. Renamed the Theme and Plugin folders to isolate if any of them are at fault. Still get the same error. I don't know how to switch the Theme from Avada to the default WP Twenty-whatever theme.
6. Dropped all the tables in the database, and I can go to site.com/wp/wp-admin/install.php to re-install WP. However, this also means that I have to start all over with installing plugins, themes, and configuration settings.
7. Tried exporting the data from the Legacy install and importing into the newly-installed WP instance. It imported the data, but not the configurations.
8. Tried changing the PHP version to 5.6 on the cPanel plan to no avail
Is there anything else I could try to help me get the WP sites back up and running without having to start all over with configuration? My Legacy plan ends 9/22, and so I only have 1 more full day to troubleshoot this before my old files/configs will be wiped by GoDaddy.
Solved! Go to Solution.
When I enable WP Debug mode, this is the error that pops up (xxx/yyyy masked for privacy):
PHP Fatal error: Uncaught Error: Class 'Fusion_Widget_Tweets' not found in /home/xxx/yyyy/wp/wp-includes/class-wp-widget-factory.php:100 Stack trace: #0 /home/xxx/yyyy/wp/wp-includes/widgets.php(115): WP_Widget_Factory->register('Fusion_Widget_T...') #1 /home/xxx/yyyy/wp/wp-content/themes/Avada/includes/class-avada-init.php(413): register_widget('Fusion_Widget_T...') #2 /home/xxx/yyyy/wp/wp-includes/class-wp-hook.php(286): Avada_Init->widget_init('') #3 /home/xxx/yyyy/wp/wp-includes/class-wp-hook.php(310): WP_Hook->apply_filters(NULL, Array) #4 /home/xxx/yyyy/wp/wp-includes/plugin.php(465): WP_Hook->do_action(Array) #5 /home/xxx/yyyy/wp/wp-includes/widgets.php(1715): do_action('widgets_init') #6 /home/xxx/yyyy/wp/wp-includes/class-wp-hook.php(286): wp_widgets_init('') #7 /home/xxx/yyyy/wp/wp-includes/class-wp-hook.php(310): WP_Hook->apply_filters(NULL, Array) #8 /home/xxx/yyyy/wp/wp-includes/plugin.php(465): WP_Hook->do_action(Array) #9 /home/xxx/y in /home/xxx/yyyy/wp/wp-includes/class-wp-widget-factory.php on line 100
I fixed the issue and it couldn't be simpler. It was a "DUH" moment. The solution is to treat the move as if you're moving to a new hosting provider.
0. Back up your files and MySQL databases.
1. Restore the files to the target host.
2. Install a fresh, new copy of WordPress (in my case, WP had errors popping up for 3 of the 5 sites) and the Theme you were using (4 out of 5 sites were not working).
3. Then use phpMyAdmin to drop the wp_options table
4. Restore the MySQL database. This will create a new wp_options table with the info from the source
5. Rename wp-content/plugins folder to wp-content/pluginsOLD
6. Install new copies of the plugins you want to keep, and activate the ones you want
This is oversimplifying all the things I had to do for each of the 5 sites, each having their own challenges/issues that needed troubleshooting. However, those steps were generally what worked for 4 out of the 5 sites.
Hope this helps whoever is running into something similar!
FYI: Tables that are created after WP is freshly configured: