如何在扩展名sr_feuser_register

时间:2016-09-30 12:02:17

标签: typo3 typo3-6.2.x

在sr_feuser_register中的翻译中使用匈牙利语字符时无法正确显示。在常规内容元素中使用时,字符会正确显示。

  • sr_feuser_register:4.0.2
  • TYPO3:6.2
  • PHP 5.6
  • MySQL 5.5

该网站是一个单一的多语言网站,语言属于域名。

以下是匈牙利语的TS设置,其他语言的设置方式相同:

[globalVar = GP:L = 15]
  config.sys_language_uid = 15
  config.language = hu
  config.htmlTag_langKey = hu
  config.locale_all = hu_HU.utf8
[global]  

sr_feuser_register翻译是通过以下方式通过Typoscript定义的:

plugin.tx_srfeuserregister._LOCAL_LANG.hu {
  username = Felhasználónév
  ...
}

在前端查看时,特殊字符显示不正确。输出类似于:FelhasznĂĄlĂłnĂŠv

相同的程序在其他语言中正常工作。查看中文,德文或俄文翻译时,可正确显示特殊字符。字符正确存储在数据库中(utf8_general_ci)。更奇怪的是,当我在同一个Typoscript中使用像法语这样的语言中的字符时,这些字符在法语前端正确显示。

在同一个Typoscript设置模板中进行法语配置的示例。

plugin.tx_srfeuserregister._LOCAL_LANG.fr {
  username = Felhasználónév
  ...
}

法语前端的所有字符都显示正确。我不知道角色在哪个方面搞乱了,以及为什么在其他语言中使用时字符会正确显示。

2 个答案:

答案 0 :(得分:0)

看起来很奇怪,我没有提供适当的解决方案,但你能调试扩展程序的核心吗?

您可以尝试修改这些行,看看会发生什么?

https://github.com/TYPO3-extensions/sr_feuser_register/blob/162bad24641ea809297f0ef8aa787f1dee281385/Classes/View/Marker.php#L479

答案 1 :(得分:0)

嗯...首先它找我metaCharset(https://docs.typo3.org/typo3cms/TyposcriptReference/Setup/Config/Index.html#metacharset)未设置为utf-8

请检查一下。

同时检查数据库的校对是否正确设置为utf-8。

äöü这样的德语变音是否正确显示?