Comments (2)
Thank you so much for asking that question.
The main reason why we split the data into four tables is for query efficiency. Sometimes having custom tables has many advantages compare to using default WordPress tables and metatables. With custom tables, we can add indexes to the schema which brings many benefits.
WordPress 'meta_query' is also terribly slow and very expensive. So it is a lot better to organize the plugin data into its 'own' table.
Projects are simple objects and do not need complex associations, so it is fit inside 'wp_posts' table.
Of course, the drawback is that other plugins will not be able to extend the functionality of the plugin (Taskbreaker) easily. This can easily be solved by providing plugin API, hooks, and actions in the future.
Anyways, PRs are always welcome :)
from taskbreaker-project-management.
Thank you for the explanation!
from taskbreaker-project-management.
Related Issues (20)
- Show Private Projects on User Profile Page
- User Projects Widget
- Error produce and feature request HOT 1
- confused by assign task HOT 1
- conflict error with Anspress HOT 1
- Only group administrator or moderator can complete or reopen a task
- A task can not be reopened HOT 1
- it does not work and cause issue HOT 1
- Date Formatting Issue
- Blank notifications
- Fatal Error when date is not properly defined
- Not work in wordpress Multisite HOT 2
- Issue in edit task
- Cannot received notifications as task member when update is ready
- Feature Request: Comment attachments
- There was an error trying to add project in this group HOT 4
- File attachment problem
- Vietnamese translation of the plugin
- Change Permalink
- Function request: disable Taskbreaker for specific buddypress groups
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from taskbreaker-project-management.