Bien sûr, faites une recherche sur « Champs personnalisés » ici sur Meta.
Il y a globalement deux façons de procéder :
- Champs personnalisés (voir par exemple How to add custom fields to models)
- Nouvelles tables de base de données (via des migrations)
Vous devez étendre le sérialiseur pertinent dans les deux cas.
Vous ne pouvez le faire que dans un plugin (pas un thème ou un composant de thème)