I am getting this warning message when I go to store > configuration in the admin panel.

Warning: Invalid argument supplied for foreach() in /opt/lampp/htdocs/Magento2/vendor/magento/module-config/Model/Config/Structure/Mapper/Sorting.php

Posted my answer for the same. Need your suggestion in my answer.

  • I think issue is in following module app/code/Vendor/ModuleName/etc/adminhtml/system.xml file. Jan 22, 2018 at 7:59
  • did you face a similar issue and fixed it? The fix I answered is working but let me know if there is any other way to fix it. Jan 22, 2018 at 8:02
  • Could you please do one thing? rename vendor folder and update composer once. Jan 22, 2018 at 8:05
  • 1
    yes, I got the similar issue , My case there is extra space issue , It is resolved by formatting system.xml file. Jan 22, 2018 at 8:09
  • 1
    Checked for tabs in the modules system.xml and removed them. It worked for me. Thanks. @PramodKharade tried composer update but the same issue persists if I don't remove the tabs in system.xml. Jan 22, 2018 at 9:38

1 Answer 1


Two ways to fix this issue.

  1. Fixed it by changing the line 96 in this file vendor/magento/module-config/Model/Config/Structure/Converter.php.

Actual Code: if ($children->length && trim($child->nodeValue, "\n ") === '') {

Corrected Code: if ($children->length && trim($child->nodeValue, "\n\t ") === '') {

  1. Check if your XML file has any tab spacing within it. If so, remove the tab spacing and replace them with normal single spaces.

Not the answer you're looking for? Browse other questions tagged or ask your own question.