Moodle块的正确上下文ID是什么

时间:2016-10-17 11:28:48

标签: block moodle

Moodle块的正确context id是什么, block_html

情形1

block_html.php档案

$this->context->id函数中的

get_content提供 122

情形2

我创建了一个名为view.php的新页面。我在这里尝试

$instance = $DB->get_record('block_instances', array('id' => 57));
$blockname = 'html';
$block = block_instance($blockname, $instance);
echo $block->context->id;

这会给出 98

情形3

$context = context_block::instance($cmid);

echo $context->id

给出 7

我应该将context id block_html用作context id。我需要准确的isNaN()

注意:对于所有块,我遇到上述问题。我用错了什么?

1 个答案:

答案 0 :(得分:1)

案例1和2 应该是正确的。

block::get_content()中,您可以使用$this->context获得正确的块上下文。

要手动获取块的上下文,请执行context_block::instance($instanceid)。我怀疑在你的例子中你错误地使用了错误的块实例ID。您可以使用get_content$this->context->instanceid获取阻止实例ID。