Due to various reasons, I migrated this site from Jekyll to WordPress, but I soon discovered that WordPress's internal id system is really chaotic and makes me very uncomfortable, here are the issues that I found problematic.
Auto Draft
- "Quick Draft" Widget on the Admin Dashboard should be disabled, it will create a new draft every time an admin log in to the site.
- Don't click "Add New" when a new article hasn't been finished, it will create a new draft even it's not saved.
Customization
All site customizations should be done at once. any updates will add new customize_changeset
post records to the database.
Additional CSS, Menu Items are also special post records with type custom_css
, nav_menu_item
, it should also be done when doing site customization.
Revision
Old revisions for posts aren't stored in the same record, resulting tons of post records with status auto-draft
, it can be disabled by adding the following code to wp-config.php
:
define( 'WP_POST_REVISIONS', false );
Upload
Files should be uploaded to S3-compatible or other storage services if possible, uploads are also attachment
post records.
Note
There may also be some other related issues I haven't been discovered, I will update this "manual" once I discover them.