편집 : 렌더러를 확장하지 않는 것에 대한 부분을 보지 못했습니다. 나는 렌더러와 관련된 솔루션을 찾는 다른 사용자들을 위해 대답을 남겼다.
core_renderer를 확장하는 사용자 지정 코어 렌더러를 만들어야합니다. 그런 다음 함수 블록 (block_contents $ bc, $ region)을 다시 작성 (core_renderer 클래스에서 복사)
$ 데이터에 변수를 할당하면 템플릿에서 사용할 수 있습니다.
class theme_yourthemename_core_renderer extends core_renderer {
...
public function block(block_contents $bc, $region) {
$this->init_block_hider_js($bc);
$data = \core\output\block::from_block_contents($bc, $this);
// Your code here
$data->yourvar = 'Some val'
return $this->render_from_template('core/block', $data);
}
}