Pimcore 5:以编程方式将块添加到Areablock(文档自动化)

问题描述 投票:0回答:1

我正在尝试将Pimcore 4实例中相当复杂的页面迁移到更新的Pimcore实例(本帖时为5)。

我已经设法将objectsasset赋值转换为那些对象的fields,但是我无法找到一种方法来自动将bricks包含和配置到Areablock中的document可编辑内容类型中。

根据Pimcore 5文档,文档创建通过以下方式完成:

<?php

  // Create a new document, name it, and assign a parent...
  $page = new \Pimcore\Model\Document\Page();
  $page->setKey( 'my-new-document' );
  $page->setParentId( 82 );

  // This is where you'd automate the brick configuration...

  // All done, save the document...
  $page->save();

如果有人有这方面的任何成功经验,我将非常感谢所提供的任何帮助。

automation document pimcore-v5
1个回答
0
投票

我建议查看getElements()的输出,根据需要进行修改,并将其提供给setElements()

    $page = \Pimcore\Model\Document::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 \Pimcore\Model\Document\Page();
    $new_page->setKey('my-new-page');
    $new_page->setElements($elements);
    $new_page->save();
© www.soinside.com 2019 - 2024. All rights reserved.