Plugin migration to elgg 2.x

Hey there,

as one must have noticed, most plugins are made for elgg 1.8 and I think not very compatible with the newest versions.

So is there any way to migrate older versions such as 1.7 - 1.9 to be used under elgg 2.x?

If there is any kind of a simple change required, I'd love to learn it and experiment on some plugins to contribute to the community as well as use for myself :)

Thanks in advance for all your help!

  • It's kind of impossible to generally say how easy or difficult it is to update a plugin released for older versions of Elgg to work on the current version(s) of Elgg. You could say that the newer the Elgg versions the plugin has been originally released the less changes will be necessary. A simple plugin is normally easier to update but "simple" is not necessarily something you can be sure about by a brief look on the code of a plugin. It's likely that the most extensive changes might be necessary when updating a plugin written for Elgg 1.7 to work on Elgg 1.8. From 1.8 to 1.9 it should be less changes necessary and for a plugin fully compatible with Elgg 1.9 the changes for Elgg 1.10 - 1.12 should be almost non-existing. Updating a plugin that works on Elgg 1.12 to Elgg 2.0 - 2.2 might not even be necessary sometimes - as it already fully works - but sometimes you need to change again a few things. If the plugin you intend to update contains Javascript code it is likely that you need to make changes there in the way the JS code is loaded. But you would need to change that only once for the JS code to work again from Elgg 1.9 - 2.2.

    A list of changes introduced by new versions of Elgg that might require modifications in plugins can be found at Other info that might be useful for plugin devs can be found in the Development sections of the site, too.

    A useful plugin is the Code Analyzer plugin to be found at It can show usage of deprecated functions used in the code of plugins (it list a lot but not necessarily all deprecated functions used). The Code Analyzer plugin will give you at least a quick overview of "easy" issues to fix before you might need to work on more difficult issues.