Why would the body field's language not save as the same language as the node? I am having a problem where the user is creating new nodes and entering body text, but setting the nodes to "language neutral" for the language. Yet when it saves the node the body field's language gets set to English. Why would this be happening? What would cause this?

On this site we have both English and French enabled and configured. This site is D7 running i18n.

This is similar to Empty body in node edit page except that I want to know how the field would get a different language than the node in the first place.
By default, drupal sets 'und' as the field language, that is LANGUAGE_NONE. So, when you print_r($node), you will see a field with something like $node-&gt;field_name['und'][0]['value']

Now, when you enable translation on this field, the 'und' will get replaced by the language code and somehow the $node structure would look like $node-&gt;field_name['en'][0]['value'] where 'en' is the language code. Your body field will now have 'en' as the language and won't be empty anymore when rendered

For your question above :


  I am having a problem where the user is creating new nodes and entering body text, but setting the nodes to "language neutral" for the language. Yet when it saves the node the body field's language gets set to English. Why would this be happening? What would cause this?


Check default language of your site, if its set to English, then probably Language Neutral will take your site's default language.