假设我们必须在自定义部署程序中访问已发布页面的内容。这部分代码位于扩展 PageDeploy 类的 CustomModule 中的 processPage 方法中。
这样我将获得正在发布的页面,但该页面的内容不会被转换(不会呈现该页面中的组件)。
public void processPage(Page page, File pageFile) throws ProcessingException {
File file = new File(pageFile.toString());
}
如果我知道我可以通过将 Cleanup 更改为 false 来禁用 cd_deployer.conf.xml 中的 TransportPackages 的清理:<WorkFolder Location="C:\tridion\work" Cleanup="false"/>,
我看到 Tridion 生成了我的页面的两个版本:
- root\page.html(具有未渲染内容,路径为 pageFile.ToString())
- root\transformed\page.html (具有完整的内容 - 我想要的内容)
为什么当我使用转换后的页面文件路径创建新文件并阅读它时,我得到的 html 代码的内容比原始 html 还要少?这是因为在此阶段的部署页面仍未呈现和完成还是...?
谢谢!