Part 1 - Creating a task list template

We'll start by creating a space template with a page layout for creating tasks. The purpose of this template is so we will have a general layout which can easily be changed and updated in the future.

By the end of this section your template should look something like this:

Source code

The following source code is shared using Confluence Storage Format, the XHTML-based format that Confluence uses to store the content of pages, page templates, blueprints, blog posts and comments.

For more information on how to use this source code on your Confluence, read the following article:


 Click here for the source code...
<ac:structured-macro ac:macro-id="8682f0fe-90b2-4406-96ad-f849f4a25c7a" ac:name="table-data" ac:schema-version="1">
  <ac:parameter ac:name="name">Task</ac:parameter>
  <ac:rich-text-body>
    <table class="wrapped">
      <colgroup>
        <col/>
        <col/>
        <col/>
        <col/>
      </colgroup>
      <tbody>
        <tr>
          <th>Assignee</th>
          <th>Task Description </th>
          <th>Due Date</th>
          <th>Status</th>
        </tr>
        <tr>
          <td>
            <div class="content-wrapper">
              <ac:structured-macro ac:macro-id="37b316c1-36ac-46ae-bfdd-6211c2e83c03" ac:name="list-data" ac:schema-version="1">
                <ac:parameter ac:name="name">User</ac:parameter>
                <ac:parameter ac:name="atlassian-macro-output-type">INLINE</ac:parameter>
                <ac:rich-text-body>
                  <ac:structured-macro ac:macro-id="6ff904b4-3dc8-46df-81ef-e6e095a7fdd6" ac:name="user-options" ac:schema-version="1">
                    <ac:parameter ac:name="groups">confluence-users</ac:parameter>
                    <ac:rich-text-body>
                      <p>
                        <br/>
                      </p>
                    </ac:rich-text-body>
                  </ac:structured-macro>
                </ac:rich-text-body>
              </ac:structured-macro>
              <p>
                <br/>
              </p>
              <p>
                <br/>
              </p>
            </div>
          </td>
          <td>
            <div class="content-wrapper">
              <ac:structured-macro ac:macro-id="46a515cf-41d7-4384-95c0-0ff023f7da4c" ac:name="text-data" ac:schema-version="1">
                <ac:parameter ac:name="name">Description</ac:parameter>
                <ac:parameter ac:name="atlassian-macro-output-type">INLINE</ac:parameter>
                <ac:rich-text-body>
                  <p>
                    <br/>
                  </p>
                </ac:rich-text-body>
              </ac:structured-macro>
            </div>
          </td>
          <td>
            <div class="content-wrapper">
              <ac:structured-macro ac:macro-id="2b385301-b82c-4c73-8bd6-096d41f8fe29" ac:name="date-data" ac:schema-version="1">
                <ac:parameter ac:name="name">Due Date</ac:parameter>
                <ac:parameter ac:name="required">true</ac:parameter>
                <ac:parameter ac:name="atlassian-macro-output-type">INLINE</ac:parameter>
              </ac:structured-macro>
            </div>
          </td>
          <td>
            <div class="content-wrapper">
              <ac:structured-macro ac:macro-id="fd8c68e7-0a7d-4ee9-97f5-96eb50aeb7f8" ac:name="list-data" ac:schema-version="1">
                <ac:parameter ac:name="name">Status</ac:parameter>
                <ac:parameter ac:name="atlassian-macro-output-type">INLINE</ac:parameter>
                <ac:rich-text-body>
                  <ac:structured-macro ac:macro-id="95bfdfd3-b219-424e-8fa2-399fe3dc1db1" ac:name="list-option" ac:schema-version="1">
                    <ac:parameter ac:name="value">Open</ac:parameter>
                    <ac:rich-text-body>
                      <p>
                        <ac:structured-macro ac:macro-id="8b22e370-438f-483e-8f3e-2e169b022bcc" ac:name="status" ac:schema-version="1">
                          <ac:parameter ac:name="colour">Grey</ac:parameter>
                          <ac:parameter ac:name="title">Open</ac:parameter>
                          <ac:parameter ac:name=""/>
                        </ac:structured-macro>
                      </p>
                    </ac:rich-text-body>
                  </ac:structured-macro>
                  <ac:structured-macro ac:macro-id="e75098ec-2b43-4c91-9943-f09ccf8bab8c" ac:name="list-option" ac:schema-version="1">
                    <ac:parameter ac:name="value">In Progress</ac:parameter>
                    <ac:rich-text-body>
                      <p>
                        <ac:structured-macro ac:macro-id="81e8d31d-e819-4981-8b03-ada692bb9571" ac:name="status" ac:schema-version="1">
                          <ac:parameter ac:name="colour">Yellow</ac:parameter>
                          <ac:parameter ac:name="title">IN PROGRESS</ac:parameter>
                          <ac:parameter ac:name=""/>
                        </ac:structured-macro>
                      </p>
                    </ac:rich-text-body>
                  </ac:structured-macro>
                  <ac:structured-macro ac:macro-id="f01c84a9-906a-41b9-9f17-0288242c8f99" ac:name="list-option" ac:schema-version="1">
                    <ac:parameter ac:name="value">Done</ac:parameter>
                    <ac:rich-text-body>
                      <p>
                        <ac:structured-macro ac:macro-id="e1468055-1a21-4b10-8881-e80c3058d37d" ac:name="status" ac:schema-version="1">
                          <ac:parameter ac:name="colour">Green</ac:parameter>
                          <ac:parameter ac:name="title">Done</ac:parameter>
                          <ac:parameter ac:name=""/>
                        </ac:structured-macro>
                      </p>
                    </ac:rich-text-body>
                  </ac:structured-macro>
                </ac:rich-text-body>
              </ac:structured-macro>
            </div>
          </td>
        </tr>
      </tbody>
    </table>
  </ac:rich-text-body>
</ac:structured-macro>

Steps

  1. Go to Space tools > Content Tools > Templates.
  2. Click Create New Template.
  3. Set the title of the Template to the "Task".
  4. Add a Table Data macro and set its Name parameter to "Task".
  5. Within the Table Data macro, add a 4x2 table.
    In the first row enter "Assignee" ,"Task Description", "Due Date" and "Status" respectively for each cell.

  6. In the "Assignee" column, add a List Data macro in the second row, set its Name parameter to "User".
    Add a User Options macro within the List Data macro. 

    • (Optional) If you want to select users associated to a specific Group then set the Groups parameter in the User Options macro to your desired Group name.

  7. In the "Task Description" column, add a Text Data macro in the second row.
    Set its Name parameter to "Description".
  8. In the "Due Date" column, add a Date Data macro in the second row.
    Set its Name parameter to "Due Date". 
  9. In the "Status" column, add a List Data macro in the second row.
    Set its Name parameter to "Status". 
  10. Within the "Status" List Data macro, add three List Option macros.
  11. For the first List Option macro set the Value parameters to "Open".
    • (Optional) To make the List Option stylish you can add a Status macro and set its Name to "Open" and choose your desired color (Grey is used in this example).
  12. For the second List Option macro set the Value parameters to "In Progress".
    • (Optional) To make the List Option stylish you can add a Status macro and set its Name top "In Progress" and choose your desired color (Yellow is used in this example).
  13. For the third List Option macro set the Value parameters to "Done".
    • (Optional) To make the List Option stylish you can add a Status macro and set its Name as "Done" and choose your desired color (Green is used in this example).
  14. Save the page.

Macro structure