Я пытаюсь подключиться к событию типа публикации страницы, чтобы я мог публиковать одну и ту же страницу на нескольких языковых сайтах одновременно, используя атрибуты страницы, чтобы выбрать, какие языки использовать.Приведенный ниже код работает без ошибок, но вместо создания дубликата страницы на целевом языке я просто получаю черновик новой страницы на языке оригинала.Что мне здесь не хватает?
Код
<?php
Events::addListener('on_page_type_publish',
function($event) {
$page = $event->getPageObject();
if ($page->getPageTypeHandle() == 'blog_entry') {
$multilingualController = Core::make('\Concrete\Controller\Backend\Page\Multilingual');
$multilingualController->setPageObject($page);
$pageCollection = $page->getCollectionID();
$pageSection = \Concrete\Core\Multilingual\Page\Section\Section::getBySectionOfSite($page);
$pageLocaleText = $pageSection->getLanguageText();
$targetLocale = \Concrete\Core\Multilingual\Page\Section\Section::getByLocale('nb_NO'); //Will be set from page attribute
$targetLocaleCollection = $targetLocale->getCollectionID();
$createNewData = array(
'section' => $targetLocaleCollection,
'cID' => $pageCollection
);
$action = $multilingualController->action('create_new', $createNewData);
$theResult = $multilingualController->runAction($action, $createNewData);
}
});