A default WordPress database can be extended by any number of custom tables to suit our project's requirements. The only thing we have to consider is the creation of custom tables over existing ones. There are two major reasons for creating custom tables:
- Difficulty of matching data to existing tables: Existing database tables are flexible enough to handle many common requirements. However, we need to be wise enough to choose custom tables in certain scenarios. Assume we have a requirement where we need to store user's previous job history. If we consider existing tables, we can only match this requirement to wp_usermeta table as key-value pairs. However, it's extremely difficult to implement proper search for these data by using the same metakey with multiple values. In such requirements, we need a custom table to create predefined...