Integrate multiple forms as optional steps in one form
Context
I'm working on a CMS portal that supports content in a set of categories. The categories important for this questions are in particular;
- Media
- Pages
When adding media, the users has to complete a form containing the following fields in a one page form;
- media
- title
- description (optional)
- tags (optional)
The problem
The problem I'm facing is that pages also can contain media. Users can add existing media from a list, but also add new media right there from the add-page-form.
I'm struggling to find a good flow of doing so. I've thought of a few ways so far which all have some pros and cons;
- 'Add media' is a button in the form that shows a dialog with the add-media-form;
The form is quite long to put in a dialog. This is also inconsistent with other forms.
- 'add media' is a button that takes the user to a second page in the form;
I'm not sure if having a multi-page-form is good UX. Especially since the user will return to page one upon completing the add-media-form-page.
- add the add-media-form to the add-page-form in the same page;
This will increase the form length significantly. It's also problematic since it's quite a long form for an optional step.
- allow drag-and-drop/click-to-upload media without the add-media-form.
This way users can upload media without the required fields which will just make a mess.
Question
What is the best way to integrate multiple forms as optional steps in one form?