Duplicating an assignment creates a new draft with all settings copied from a source assignment. Use it when you want to base a new assignment on an existing one — for example, reusing an essay template across terms, or creating variants of an assignment for different sections.
Three Ways to Duplicate
There are three places where you can duplicate an assignment. All three do exactly the same thing under the hood, so use whichever fits your current workflow.
From the Assignments List
To duplicate a single assignment:
- Navigate to Assignments > Assignments in /wp-admin/.
- Hover over the assignment you want to copy.
- Click the Duplicate row action.
- You’ll be redirected to the new draft’s edit screen, ready to adjust the title and any other settings before publishing.

Bulk Duplicate
To duplicate several assignments at once:
- Navigate to Assignments > Assignments.
- Check the boxes next to the assignments you want to duplicate.
- Choose Duplicate from the bulk actions dropdown.
- Click Apply. A success message tells you how many duplicates were created.
Bulk duplicates stay on the list view rather than redirecting to an edit screen — you can then open each new draft as needed.
From the Assignment Editor
While editing an assignment, click the Duplicate button in the editor toolbar. The new draft opens immediately, with all of the source’s settings already in place.
What Gets Copied
The duplicate inherits everything that defines the assignment itself:
- Content fields: description, instructions, grading guidelines
- Scoring: maximum points, passing score
- Due date settings: due date and timezone, late policy, late penalty percent
- Resubmission settings: allow resubmission, maximum resubmissions
- File settings: allowed file types, maximum file size, maximum files
- Categories and tags
What Does Not Get Copied
Submission data is never copied. The duplicate starts fresh:
- Student submissions and their files
- Submission count and graded count (reset to 0)
- Grading history and instructor feedback
This keeps each assignment’s submission record self-contained, even when several assignments share the same configuration.
What Changes on the Duplicate
A few fields are deliberately reset rather than copied:
- Title: prefixed with the original title and “(Copy)”. For example, Module 1 Essay becomes Module 1 Essay (Copy). Update this before publishing.
- Status: always set to Draft, even if the source was published or archived. This prevents students from seeing the duplicate before you’re ready.
- Author: set to the user performing the duplication, not the original author. This matters when teachers duplicate assignments created by other instructors.
- Created date: set to the moment of duplication.
Permissions
Administrators can duplicate any assignment. With the Educator add-on installed, teachers can duplicate any assignment they’re permitted to see, which usually means their own assignments and any shared with them. The duplicate is owned by the teacher who performed the duplication, regardless of who created the original.
Add-On Behavior
Add-on plugins extend duplication automatically when they’re installed:
- Educator: rubric attachments are copied to the duplicate. The duplicate uses the same rubric as the source, with no extra setup required.
- Enterprise: the duplication is recorded in the audit log as an
assignment.createdevent.
For Developers
A new action hook fires after every successful duplication:
do_action( 'pressprimer_assignment_assignment_duplicated', $new_assignment_id, $source_assignment_id );
Use this to copy any per-assignment data your own add-on stores outside the main wp_ppa_assignments table.
