Joomla 3.x 语言文件问题

Joomla 3.x language file issues

我有一个带有语言文件的模块,该文件大部分都可以使用,但我无法使用 type = "text"

模块xml文件有

<field name="heading_text_activities" 
type="text" default="W4C_WEEKLY_ACTIVITIES_ENTER_HEADING_TEXT" 
description = "W4C_WEEKLY_ACTIVITIES_ENTER_HEADING_TEXT" 
label="W4C_WEEKLY_ACTIVITIES_ENTER_HEADING_TEXT" size="10" />
</fieldset>

语言文件有

W4C_WEEKLY_ACTIVITIES_ENTER_HEADING_TEXT="Enter heading text"
W4C_WEEKLY_ACTIVITIES_HEADING_TEXT_ACTIVITIES="Heading Text Activities"
W4C_WEEKLY_ACTIVITIES_ENTER_HEADING_TEXT="Enter heading text"

问题是文本输入框默认显示 W4C_WEEKLY_ACTIVITIES_ENTER_HEADING_TEXT 而不是输入标题文本字符串。

我猜我做错了什么,但文件的其余部分工作正常,只是这一部分拒绝工作。

知道我可以在哪里查看或调试方法吗?

谢谢

您应该按照 Joomla docs 中的描述调试您的问题。

You activate language debugging via the Administration Back-end by going into Global Configuration and clicking on the System tab. Find the Debug Language field, change the value to “Yes” and save your changes.

这样您就可以找到问题出在翻译文件中还是文件名中。我希望这会有所帮助。

要使语言文件正常工作,您必须将其包含在站点语言文件夹中。这是通过模块 xml 文件以这种方式添加代码完成的

<languages folder="path/to/language">
    <language tag="en-GB">en-GB.mod_yourmodule.ini</language>
    <language tag="en-GB">en-GB/en-GB.mod_yourmodule.sys.ini</language>
</languages>

还假设您的模块名称是 mod_yourmodule 并且您的语言文本是 W4C_WEEKLY_ACTIVITIES_ENTER_HEADING_TEXT 那么最好在它前面加上模块名称,例如 MOD_YOURMODULE_W4C_WEEKLY_ACTIVITIES_ENTER_HEADING_TEXT.

您也可以查看此 link 了解详细信息 https://docs.joomla.org/Specification_of_language_files。它在第 2 点中说

All KEY's in the frontend shall include a prefix of the extension

对于翻译默认值的语言键你需要添加

translate_default="true"

这样到字段选项

   <field name="heading_text_activities" 
    type="text" default="W4C_WEEKLY_ACTIVITIES_ENTER_HEADING_TEXT" 
    description = "W4C_WEEKLY_ACTIVITIES_ENTER_HEADING_TEXT" 
    label="W4C_WEEKLY_ACTIVITIES_ENTER_HEADING_TEXT" 
    size="10" 
    translate_default="true" />