Question types: Drag-and-Drop Matching

Maintained by Picture of DualCube TeamDualCube Team
Question type similar to the matching question type but with a drag and drop interface for the students during attempt.
2674 sites
61 fans
Current versions available: 5

Created by Adriane Boyd during 2007 Google Summer Of Code, the drag and drop matching question type is quite similar to the matching question type found in standard Moodle, differences are:

  • during question creation/edition of drag and drop matching questions, an editor is available for each answer (in standard matching question this is not possible because these elements are displayed inside a select menu during question attempts)
  • during question attempts a drag and drop interface is displayed and the student must drag each right element on the correct spot on the left.


This plugin is part of set Seeking new maintainer.


Screenshot #0


Picture of DualCube Team
DualCube Team (Lead maintainer)
Picture of Jean-Michel Védrine
Jean-Michel Védrine: Previous maintainer
Picture of Adriane Boyd
Adriane Boyd: Original author
Coolie and Andrew
Andrew Nicols: Javascript upgrade to YUI3
Please login to view contributors details and/or to contact them

Comments RSS

Show comments
  • Это я…
    Thu, Apr 4, 2019, 7:56 PM
    In version.php $plugin->version must be 2019040400, but not 2019040200
    Otherwise, the installation loops smile
  • Picture of Jean-Michel Védrine
    Thu, Apr 4, 2019, 10:07 PM
    Hello DualCube, maybe you could integrate all the fixes that are in my Github in the master branch see
    It is GDPR compliant, has security fixes, some Behat and phpunit tests.
  • Wazza
    Sat, Apr 6, 2019, 3:29 AM
    Installation does not work for me. It says there's an new update available, but when trying to install it, it just gets to the admin notification page. No errors are given.
  • Picture of Doug E. Wray
    Sun, Apr 7, 2019, 3:41 AM
    I am having the same trouble as Richard van Iwaarden: trying install using the Moodle (3.3.6) Web interface does not seem to work, either by clicking through the notifications page or by uploading a .zip file via drag and drop in the Web interface. I haven't tried installing via the command line (though permissions seem to be fine), however.
  • Picture of werner cyrmon
    Sun, Apr 7, 2019, 4:39 PM
    Same problem as Richard and Doug ....
  • Picture of Jean-Michel Védrine
    Sun, Apr 7, 2019, 8:21 PM
    Hello Richard, Doug, Werner, and other users having trouble with the latest release.
    You can do a quick fix by changing just one line in the version.php file : change $plugin->version = 2019040200; to $plugin->version = 2019040400; and the installatio will succeed.
    Another solution would be to download the latest version from my Github (verify that you download the one from the master branch) an added benefit by doing so is that you get a version that is GDPR compliant (interesting for european users and maybe other).
    I am very sorry that the new maintainer has released a buggy version but I can't correct the problem as I don't have the needed rights to upload a new version.
    My opinion is that this plugin would need some work to improve the javascript but unfortunately I am now retired and I don't have any time to work on it.
  • Picture of Doug E. Wray
    Mon, Apr 8, 2019, 1:35 PM
    The renaming solution posted by Jean-Michel Védrine worked fine for me. I thank you.
  • Picture of Sophia Canedo
    Wed, May 22, 2019, 4:04 AM
    Hello All,

    I am wondering if this is compatible for the latest Moodle release, version 3.7. Any ETA on when if not?

  • Picture of Martin O'Mahony
    Fri, Jun 14, 2019, 3:40 PM
    I am afraid ddmatch is no longer working with Moodle 3.7, which is quite a problem for me. I posted a bug report here:
    Can anybody help?
  • Picture of Martin O'Mahony
    Fri, Jun 14, 2019, 3:40 PM
    I am afraid ddmatch is no longer working with Moodle 3.7, which is quite a problem for me. I posted a bug report here:
    Can anybody help?
  • Picture of DualCube Team
    Fri, Jun 14, 2019, 5:17 PM
    Dear Martin,
    As you know that we have 15 plugins currently on, we will need some time to deliver the updated versions for all of them. Please bear with us. We can not promise any timeline right now but we will keep you posted.
    Thank you.
  • Picture of DualCube Team
    Fri, Jun 21, 2019, 3:29 PM
    We have updated the plugin. Thank you.
  • Picture of Will Bulluck
    Thu, Sep 12, 2019, 11:58 PM

    Using qtype_ddmatch version 1.6 Drag and drop matching question for Moodle 2.6, 2.7, 2.8, 2.9, 3.0, 3.1, 3.2, 3.3, 3.4, 3.6, 3.7 Build 2019062100 on a Moodle 3.5 site breaks the question where you cannot drag and drop the answers. Upon inspection in the browser console, this shows up.

    Uncaught TypeError: Cannot read property 'all' of null
    at DDMATCH.initializer (yui_combo.php?m/1568213219/qtype_ddmatch/dragdrop/dragdrop-debug.js:36)
    at DDMATCH._initHierarchy (yui_combo.php?rollup/3.17.2/yui-moodlesimple.js:968)
    at DDMATCH._baseInit (yui_combo.php?rollup/3.17.2/yui-moodlesimple.js:946)
    at DDMATCH.init (yui_combo.php?rollup/3.17.2/yui-moodlesimple.js:983)
    at DDMATCH._initBase (yui_combo.php?rollup/3.17.2/yui-moodlesimple.js:946)
    at DDMATCH.BaseCore (yui_combo.php?rollup/3.17.2/yui-moodlesimple.js:942)
    at DDMATCH.Base (yui_combo.php?rollup/3.17.2/yui-moodlesimple.js:986)
    at new DDMATCH (yui_combo.php?m/1568213219/qtype_ddmatch/dragdrop/dragdrop-debug.js:6)
    at Object.M.qtype.ddmatch.init_dragdrop (yui_combo.php?m/1568213219/qtype_ddmatch/dragdrop/dragdrop-debug.js:156)
    at attempt.php?attempt=73&cmid=556:586

  • ETHz
    Mon, Sep 23, 2019, 8:39 PM
    The new question div ids for 3.7 are compound of 'question-' . $this->usageid . '-' . $this->slot;. this need to be fixed in yui/dragdrop/dragdrop.js around line 19, in renderer.php you need to use: get_outer_question_div_unique_id() to generate the new compound.

  • ETHz
    Fri, Sep 27, 2019, 5:25 PM
    You can download the version for moodle 3.7+ support through the forked repo (maintained by ETH) from here:
1 2 3 4 5 6 7
Please login to post comments