Moodle使用图像导出课程内容

Moodle使用图像导出课程内容,moodle,Moodle,我正在尝试从Moodle数据库导出Moodle课程内容,但在导出图像时遇到问题。Moodle将课程HTML存储在MySQL数据库中,但图像被引用,需要在HTML字符串中替换 比如说。这是保存在Moodle DB中的源html: <p> <img style="display: block; margin-left: auto; margin-right: auto;" src="@@PLUGINFILE@@/sound_card_zpstlml0qfv.png" hei

我正在尝试从Moodle数据库导出Moodle课程内容,但在导出图像时遇到问题。Moodle将课程HTML存储在MySQL数据库中,但图像被引用,需要在HTML字符串中替换

比如说。这是保存在Moodle DB中的源html:

<p>
    <img style="display: block; margin-left: auto; margin-right: auto;" src="@@PLUGINFILE@@/sound_card_zpstlml0qfv.png" height="492" width="720" /
</p>

Moodle将其转换为最终html:

<p>
    <img style="display: block; margin-left: auto; margin-right: auto;" src="http://mymoodleserver.com/pluginfile.php/553/mod_lesson/page_contents/1725/sound_card_zpstlml0qfv.png" height="492" width="720" /
</p>

我发现@PLUGINFILE@需要替换为图像文件的路径,但我不知道最终图像URL中的第一个数字是什么。我猜是身份证,但我能猜出是什么。我从
lesson\u pages
表中计算出URL中的第二个数字是
id


最终图像URL(在您的示例中为553)中的第一个数字不是mdl_文件表中的id吗

我仍然不明白的是mdl_files表中的文件与实际图像文件之间的关系


如果您找到答案,请发布。

否第一个数字是mdl_文件中的contextid。Moodle处理文件和URL的方式很复杂。最后,我采取了不同的方法,这比弄清楚穆德尔的图像系统要容易得多。我解析了所有标签中的文件名,并在前面添加了对我的图像存储库的引用。然后将所有Moodle图像复制到我的图像存储库中。希望这对你有帮助…是的,有帮助。非常感谢。