We noticed that not all the users (or clients) are following what is considered best practices when working with WordPress websites. This can often lead to a string of headaches for anyone charged with the task of maintaining those websites later on. Following your feedback and requests, we decided to tackle one of those issues.
Let’s say you just got a new client who was unhappy with the previous website administration. Or perhaps he simply needs someone to deal with the hassle of website management.
You inherit the website with all the custom work done, take note of the current setup, and proceed to secure the website by creating regular daily backups and tighten up the security.
Everything is going smoothly until the first website crash, when you are promptly alerted by your Uptime Monitor feature that the website is down and you nimbly proceed to restore the website from the latest backup. You inform the client about the crash and how quickly you handled the situation only to find out from the client that the website is not working properly.
After that awkward talk, you discover that they had a custom plugin solution which stored the customer information in a separate, custom-built database table that is now gone forever.
Dealing with custom database prefixes
Our backup system was built according to best practices advocated by the WordPress community. As such, it automatically includes in the backup all the database tables with a prefix defined within wp-config file.
*For the simplicity or this article we are referring to ‘non standard table’ as a database table that doesn’t have the same prefix as the one defined within wp-config.php file.
By thinking ahead, we predicted that not everyone will follow these practices. Or, that some will simply want to have their own custom solution in place. That’s why one of the main options for our backup solution is the ability to include or exclude specific files, folders, and database tables.
However, there are situations (such as the one described above) when you are simply unaware of some custom website work. Or it’s just one of those situations where the user decided to “try doing it himself.”
This is why we decided to improve our current backup solution. And now, we warn you if the system detects any non standard database tables on the website.
How the improvement works
- Backup is performed on the specific website
- The system detects non-standard database tables. This action is triggered during the first backup after the improvement is released (initial, manual, or scheduled).
- If there are any non-standard tables, the user receives a notification. An option to review and/or include those tables in the next backup is then presented.
Non standard database table notification
- User is prompted with a list of found non standard tables and presented with the question:
Do you want to automatically include them in the future backups?
a. Yes – This will include all the non standard tables in all the future backups by default
b. No, I’ll do it myself – Do not include non standard tables by default in all the future backups
*If the user doesn’t select either of these options, they will be notified again after each additional backup until one of the options is chosen.
Note: Users still have the option to include or exclude specific files, folders, and database tables into the next backup, which includes any chosen or previously excluded files or tables.
From now on, every user will be warned if there are any non standard database tables found on the website during the performed backup.
*tables with a different prefix from the one defined in wp-config file
Hopefully, this improvement will serve as a reminder about the option to include or exclude any files, folders and database tables into the existing backups. And for those rare situations when clients are expecting everything to be included by default, this new notification will warn you about the existence any non-standard WP tables.
This should help mitigate all of those awkward situations and lead to better client satisfaction. Plus, one more item is removed from the checklist of things you need to worry about.
This is our way of saying: “We heard you. We’ve got your back.”