我遇到了一个问题,用户正在创建新节点并输入正文,但是将节点设置为该语言的“语言中立”。但是,当它保存节点时,正文字段的语言将设置为英语。为什么会这样呢?是什么原因造成的?
在此站点上,我们同时启用和配置了英语和法语。该站点是运行i18n的D7。
这类似于节点编辑页面中的“空正文”,不同之处在于,我想知道该字段将如何获得与节点最初不同的语言。
我遇到了一个问题,用户正在创建新节点并输入正文,但是将节点设置为该语言的“语言中立”。但是,当它保存节点时,正文字段的语言将设置为英语。为什么会这样呢?是什么原因造成的?
在此站点上,我们同时启用和配置了英语和法语。该站点是运行i18n的D7。
这类似于节点编辑页面中的“空正文”,不同之处在于,我想知道该字段将如何获得与节点最初不同的语言。
Answers:
默认情况下,drupal将'und'设置为现场语言,即LANGUAGE_NONE。因此,当您print_r($node)
看到时,您会看到一个类似$node->field_name['und'][0]['value']
现在,当您在此字段上启用翻译时,“ und”将被语言代码替换,并且$node
结构看起来像$node->field_name['en'][0]['value']
“ en”是语言代码。现在,您的“身体”字段将使用“ en”作为语言,并且在渲染时将不再为空
对于上述问题:
我遇到了一个问题,用户正在创建新节点并输入正文,但是将节点设置为该语言的“语言中立”。但是,当它保存节点时,正文字段的语言将设置为英语。为什么会这样呢?是什么原因造成的?
检查您网站的默认语言,如果将其设置为英语,则语言中立语言可能会采用您网站的默认语言。