Moodle - 新的(非定制的)翻译

时间:2014-05-21 14:58:00

标签: php moodle

我在Moodle中创建了一些额外的网页(php文件)。当然,它们可从适当的路径访问(例如" .. my_folder / page.php")。

现在我正在尝试寻找添加新翻译条目的解决方案。我注意到我可以编辑现有的翻译,例如" [moodledata] /郎/ [语言代码] / [文件名] .PHP"文件,但添加新文件,甚至添加新字符串到现有文件,没有任何影响。清除缓存后,它们似乎仍然是“不可见的”#34;为Moodle。我不知道它是如何工作的,它一定很复杂吗?

如何为Moodle添加新的(不是修改旧的)翻译字符串?谢谢。

1 个答案:

答案 0 :(得分:1)

为您的插件创建一个lang文件夹。

例如:如果您要创建本地插件,请使用

/local/yourpluginname/lang/en/local_yourpluginname.php

如果它是一个块那么

/block/yourblockname/lang/en/block_yourblockname.php

然后在文件中

defined('MOODLE_INTERNAL') || die();

$string['pluginname'] = 'yourpluginname';
$string['yourstringid'] = 'String you want to display';

然后使用

进行呼叫
echo get_string('yourstringid', 'local_yourpluginname');

有关详细信息,请参阅 http://docs.moodle.org/dev/String_API

编辑:

拥有传统的php页面没有错::)

您应该将本地目录用于任何非标准插件 - 例如:

/local/mypages/mypage1.php
/local/mypages/mypage2.php
/local/mypages/lang/en/local_mypages.php

然后直接用

打电话
echo html_writer::link(new moodle_url('/local/mypages/mypage1.php), 
     get_string('mypage1title', 'local_mypages');

查看

中的典型结构
/local/readme.txt

要使用get_strings,您需要在mypage1.php等的顶部包含配置文件。

require_once(dirname(dirname(dirname(__FILE__))) . '/config.php');