Pimcore 5:以编程方式将块添加到Areablock(文档自动化)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Pimcore 5:以编程方式将块添加到Areablock(文档自动化)相关的知识,希望对你有一定的参考价值。
我正在尝试将Pimcore 4实例中相当复杂的页面迁移到更新的Pimcore实例(本帖时为5)。
我已经设法将objects和asset赋值转换为那些对象的fields,但是我无法找到一种方法来自动将bricks包含和配置到Areablock中的document可编辑内容类型中。
根据Pimcore 5文档,文档创建通过以下方式完成:
<?php
// Create a new document, name it, and assign a parent...
$page = new PimcoreModelDocumentPage();
$page->setKey( 'my-new-document' );
$page->setParentId( 82 );
// This is where you'd automate the brick configuration...
// All done, save the document...
$page->save();
如果有人有这方面的任何成功经验,我将非常感谢所提供的任何帮助。
答案
我建议查看getElements()的输出,根据需要进行修改,并将其提供给setElements()
$page = PimcoreModelDocument::getById($page_of_interest);
$elements = $page->getElements();
// Update $elements (namely changing documentId to the id of the new page, and updating field names/types)
$new_page = new PimcoreModelDocumentPage();
$new_page->setKey('my-new-page');
$new_page->setElements($elements);
$new_page->save();
以上是关于Pimcore 5:以编程方式将块添加到Areablock(文档自动化)的主要内容,如果未能解决你的问题,请参考以下文章
Pimcore 5:从 4.6.2 升级到 5.0 后卡在维护模式
Pimcore:更新到 Pimcore 4 后无法使用 Pimcore\Model\Object
Xamarin.Forms:以编程方式将子项添加到网格的某些列