我安装了 Moodle 4.4.3。系统中添加了多个课程。我可以访问 Moodle API。我正在使用 API 调用core_course_get_contents
我的其中一门课程的内容。以下是响应:
[
{
"id": 38,
"name": "Section Title",
"visible": 1,
"summary": "",
"summaryformat": 1,
"section": 1,
"hiddenbynumsections": 0,
"uservisible": true,
"modules": [
{
"id": 21,
"url": "https://example.com/mod/wiki/view.php?id=21",
"name": "Reading materials",
"instance": 5,
"contextid": 44,
"visible": 1,
"uservisible": true,
"visibleoncoursepage": 1,
"modicon": "https://example.com/theme/image.php/boost/wiki/1727859606/monologo?filtericon=1",
"modname": "wiki",
"purpose": "collaboration",
"branded": false,
"modplural": "Wikis",
"availability": null,
"indent": 0,
"onclick": "",
"afterlink": null,
"customdata": "\"\"",
"noviewlink": false,
"completion": 0,
"downloadcontent": 1,
"dates": [],
"groupmode": 0
}
]
}
]
课程页面包含 1 个添加了 Wiki 活动的条目。我了解到 ID=38 是课程页面上的条目“章节标题”,而 ID=21 是 Wiki ID。然后我使用 Moodle API 调用mod_wiki_get_page_contents
尝试pageid=21
获取 Wiki 活动的内容。但是响应并未显示 Wikipedia 的内容,而是显示其他页面的内容:
{
"page": {
"id": 21,
"wikiid": 19,
"subwikiid": 18,
"groupid": 0,
"userid": 0,
"title": "Home",
"cachedcontent": "(Wrong content here)",
"contentformat": 1,
"caneditpage": true,
"version": 106,
"tags": []
},
"warnings": []
}
在正确的 Wiki 页面的网页中,从编辑按钮的链接,我可以猜出 Wiki 的 ID 是7
而不是21
,但 ID=7 没有出现在任何响应中。当我使用mod_wiki_get_page_contents
和 时pageid=7
,它会显示正确的内容。
我的问题是:如何利用 Moodle API 获取 ID=7?
谢谢。