From 2baa476b51053f3a623050d70df73c637cf23dcd Mon Sep 17 00:00:00 2001 From: Daniel <845765@qq.com> Date: Fri, 10 Oct 2025 13:09:10 +0800 Subject: [PATCH] :art: https://github.com/siyuan-note/siyuan/issues/16048 Signed-off-by: Daniel <845765@qq.com> --- kernel/model/block.go | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/kernel/model/block.go b/kernel/model/block.go index 97a4f0ebf..39f81da40 100644 --- a/kernel/model/block.go +++ b/kernel/model/block.go @@ -787,9 +787,16 @@ func GetBlockDOMs(ids []string) (ret map[string]string) { continue } - if parentFoldedHeading := treenode.GetParentFoldedHeading(node); nil != parentFoldedHeading { - node.SetIALAttr("parent-heading", parentFoldedHeading.ID) - } + ast.Walk(node, func(n *ast.Node, entering bool) ast.WalkStatus { + if !entering || !n.IsBlock() { + return ast.WalkContinue + } + + if parentFoldedHeading := treenode.GetParentFoldedHeading(n); nil != parentFoldedHeading { + n.SetIALAttr("parent-heading", parentFoldedHeading.ID) + } + return ast.WalkContinue + }) ret[id] = luteEngine.RenderNodeBlockDOM(node) }