| Defined | src/docs/userguide/maniphest_custom.diviner:1 |
|---|---|
| Group | Application User Guides |
How to add custom fields to Maniphest.
Maniphest provides some support for adding new fields to tasks, like an "cost" field, a "milestone" field, etc.
If you don't need complicated display controls or sophisticated validation, you can add simple fields. These allow you to attach things like strings, numbers, and dropdown menus to the task template.
Customize Maniphest fields by setting maniphest.custom-fields in your configuration. For example, suppose you want to add "Estimated Hours" and "Actual Hours" fields. To do this, set your configuration like this:
'maniphest.custom-fields' => array( 'mycompany:estimated-hours' => array( 'label' => 'Estimated Hours', 'type' => 'int', 'caption' => 'Estimated number of hours this will take.', 'required' => false, ), 'mycompany:actual-hours' => array( 'label' => 'Actual Hours', 'type' => 'int', 'required' => false, ), )
Each array key must be unique, and is used to organize the internal storage of the field. These options are available:
If you want to add fields with more specialized validation, storage, or rendering logic, you can do so with a little work:
This is relatively advanced but should give you significant flexibility in defining custom fields.