Support » Plugin: WPML Multilingual CMS » [Plugin: WPML Multilingual CMS] Get "Fatal error: Element ID already exists" when upgradin

  • Resolved stephaniewalter



    Until today I was using the 1.8 version of WPML, worked like a charm. Today, I decided to upgrade to the 2.0.4 version. Since wordpress was proposing me the upgrade in plugin pannel, I thought it was safe.

    The upgrade worked fine, I got the upgrade table message, I did that too. No “visible” problem until I decided to modify an already existing page (not post!) with already existing translations (before the upgrade), I got this message when I saved changes:

    Fatal error: Element ID already exists with a different type in localpathtomywebsite\wp-content\plugins\sitepress-multilingual-cms\sitepress.class.php on line 1900

    Strange thing, when I use the “back” button of browser, the changes made in the wp editor where saved and if I go and look at the published page, changes where also made. So wordpress seams to take the changes into account and publish them. Nevertheless, if I change other things that what’s in the editor like attributes, thumbnails, etc (anything that is not text), the changes appear on the published page, but not in the wp admin area, even if I refresh the page.

    So I run a few tests to see when this bug occurs and that’s what I found.
    I DON’T get the error message on :
    – posts (with or without translation before upgrade)
    – custom post types (with or without translation before upgrade)
    – pages with NO translation created before the upgrade
    – new pages and their translation created AFTER the upgrade

    I DO get the error message on :
    – pages created before the upgrade that already had one translation (or more)
    – pages created before the upgrade that already had one translation even if I delete the translation and re-create it.

    I tried to put maximum details about the bug, so if anybody got an idea or the same bug and solved it I would be glad to here about the solution.

    I was smart enough to backup old 1.8 plugin version + databade just before the upgrade so I will restore it for the moment until this bug is solved

Viewing 15 replies - 1 through 15 (of 15 total)
  • I am getting the same exact problem.
    You are not alone, but I too have not found any solution!

    Please, where are the developers when you need them. 🙂

    Well after playing around with this, I think I have a workaround.

    (And the rabbit hole begins)..

    From the plugin’s directory, delete the latest (2.0.4) version. Then download the 1.8.0 version of the plugin and upload.

    Go to your word-press plugin manager and activate the 1.8.0 plugin.

    Once 1.8.0 is activated, try doing an automatic update.
    You should get a message about it failing to update and the plugin no should longer being listed in the plugin manager (This is to be expected).

    Once you have successfully failed to update the 1.8.0 version, simply upload/overwrite the 1.8.0 version in /plugins/ with a fresh version of the 2.0.4 (or latest version to date).

    From here go back to the plugin manager, activate the plugin again and vola.

    Note, you might have to turn off permalinks and reset your custom permalinks when all this is said and done.

    I hope this helps others out there.

    Hi devinrayolsen and thank you for the solution but it does not work in my cas :

    Once 1.8.0 is activated, try doing an automatic update.
    You should get a message about it failing to update and the plugin no should longer being listed in the plugin manager (This is to be expected).

    Well, for this part, I don’t get the failing message on the contrary the message says that it was properly re-activated and the extension version is 2.0.4. It just does the upgrade as it should do it, and the problem is still there 🙁

    So a few questions to see if I’ve the same configuration :
    – before doing all of that, did you “normaly” upgrade to 2.0.4 ?
    – did you also upgrade the tables when you were asked to (just after automatic upgrade to 2.0.4)
    – did you rename the plugin directory ?

    Thanks a lot for the help ^^

    I just noticed that the 2.1 version of WPML was released but this version of the plugin is not free anymore.
    Well I then doubt that we will get an answer for this problem, we may just have to upgrade and purchase the full 2.1 version to get ride of problems.
    I nevertheless feel a little bit cheated, as if I was testing a “beta” version of a commercial product. Well, I won’t complain since the free version of wpml I was using until now was great.

    I tried to install the version of the plugin and it works fine for so for the moment I will stick with this version.

    I’ll see if I can update to commercial version one day (but that’s not up to me) and hope this bug will be fixed then.

    Plugin Author Amir Helzer


    WPML 2.x.x introduces new translation management.

    This translation management system stores information of who translated what and when. It’s very important for larger sites who work with teams of translators. Admins can assign jobs to translators and get a complete picture of what’s already translated, what needs update and who’s doing what.

    The upgrade logic from pre 2.x.x to 2.x.x adds this information to the database. It’s a complex operation and may fail under different conditions. This is why we recommended doing a DB backup before any such upgrade.

    Just downgrading the code might work, but it’s going to leave the translations database in a very messy situation. In the long run, this will lead to lost translations and lost content in WordPress. It’s pretty similar to what will happen if you upgrade WordPress to 3.0.5 and then use that database on WordPress 2.8. It’s going to appear working, but will become messy pretty soon.

    Additionally, in WPML 2.1.0 (which is a paid version), we fixed numerous bugs all over the place. Some bugs were in the upgrade logic. These bugs affected special cases that usually don’t exist.

    We cannot apply these bug fixes to previous versions as they are spread across many PHP files.

    WPML 2.0.4 works pretty well. We provide technical support for newer versions in our support forum.

    Thank you very much AmirHelzer for the explanation. The “funny” thing in my case is that everything seams to work pretty fine, posts are update even though I get the fatal error message. My php is in strict mode for my development environnement, so maybe on the “real” server I won’t get the error.
    We’ll see what happens, for the moment with the 2.0.3 everything seams fine.

    Plugin Author Amir Helzer


    Great. I’m glad to see you’re doing fine with that. We can probably mark this thread as resolved.

    Well, the fatal error for 2.0.4 are not resolved but since I found a workaround that works using 2.0.3 I will mark as resolved 🙂

    Thanks a lot again AmirHelzer


    My website was using WPML 2.0.4. Since the last upgrade of WordPress (which I needed for many of the other plugins that I run, etc.), everything went wrong with the translations. I blamed many of the errors to other plugins, but it was definitely WPML.
    Anyways, I went back to WPML page to see if there was an upgrade that it hasn’t come through and… I came across that you went commercial!

    I am not happy with the change without warning. I wouldn’t have spent time using your plugin if I knew you were going down this path. The problem for me is that my website is more of a hobby/experiment, I can’t keep throwing money to it. I think many other developers are in the same boat.

    It would be nice to have a stripped-down version that keeps up with WordPress updates.

    Now, I need solution for my website looking forward. Could you tell me what are the main differences between the two licenses that you offer?



    Plugin Author Amir Helzer


    We sent notes about the planned upgrade months ago.

    Currently, the version on says it’s compatible with WordPress 3.0.5 and there’s a big message about the newer version.

    I think that it’s better to check that plugins are compatible before upgrading WordPress.

    We never upgrade WordPress (even minor version) on the live site. We take a DB snapshot, do the upgrade locally, see that all is fine and then upgrade the live site.


    I apologize if I sound rude.

    I agree with your comments on the upgrade steps. Unfortunately, when you are running a website for free in your spare time, it is a bit hard to test every single aspect of the site.

    I did make a backup of my database before upgrading Worpress. I decided to upgrade WordPress anyways as I was getting more benefits than the problems that I thought it would create.

    Still… I may buy the pay version, but I am not sure if I only need the Blog version or the Multilingual CMS. Is it possible to pay the difference and change from the Blog to the Multilingual version?

    I know it sounds pitty, after all you are not asking for big money considering the benfits. The problem is that everything adds up: hosting + domain + a few ads here and there to drive traffic + etc + etc

    Plugin Author Amir Helzer


    Sure. I understand your point. This is why we came up with two versions, one for personal blogs and the other for full websites.

    The ‘blog’ version doesn’t contain the String Translation and Translation Management features. If you’re not using them, you’re not going to miss anything.

    Then, if you later decide the upgrade, you can pay the difference ($50) and get access to all the other modules. This upgrade will be available from your WPML account.

    This page explains the differences between the two versions:

    WPML Core and Add-on Plugins

    So what is the fix for the “Fatal Error: Element ID already exists with a different type”? (WPML, WordPress 3.0.4).
    I suddenly started getting it without updating WPML oder WordPress when trying to add a menu entry. Basically it means that I cannot add pages to my site any more.

    Hi klemensz, you seam to get the same error as mine, but did you check if the page was actually added in DB, etc (even if you got the message)? In my case the page was updated event when I got the error message, so maybe you’re in the same case?
    Using WPML instead of last release fixed the problem for me (on wp3.0.5).
    I hope it would help, but you should also note that wpml 2.0.4 will not support wordpress 3.1 so be carefull it you upgrade wordpress or wpml and make a backup before doing anything.

    Thanks for the hint. I don’t get the message when creating a page but when trying to add it to the custom menu (Appearence -> Menu).

Viewing 15 replies - 1 through 15 (of 15 total)
  • The topic ‘[Plugin: WPML Multilingual CMS] Get "Fatal error: Element ID already exists" when upgradin’ is closed to new replies.