当前位置: 首页>>代码示例>>PHP>>正文


PHP ContentTypeService::createContentType方法代码示例

本文整理汇总了PHP中eZ\Publish\API\Repository\ContentTypeService::createContentType方法的典型用法代码示例。如果您正苦于以下问题:PHP ContentTypeService::createContentType方法的具体用法?PHP ContentTypeService::createContentType怎么用?PHP ContentTypeService::createContentType使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在eZ\Publish\API\Repository\ContentTypeService的用法示例。


在下文中一共展示了ContentTypeService::createContentType方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: createContentType

 public function createContentType(ContentTypeCreateStruct $struct)
 {
     if (!isset($struct->mainLanguageCode)) {
         $struct->mainLanguageCode = 'eng-GB';
     }
     if (!isset($struct->names)) {
         $struct->names = ['eng-GB' => $struct->identifier];
     }
     $this->contentTypeService->publishContentTypeDraft($this->contentTypeService->createContentType($struct, [$this->contentTypeService->loadContentTypeGroupByIdentifier('Content')]));
     $this->currentContentType = $this->contentTypeService->loadContentTypeByIdentifier($struct->identifier);
 }
开发者ID:ezsystems,项目名称:repository-forms,代码行数:11,代码来源:ContentType.php

示例2: getNewDraft

 /**
  * Create new content type draft
  *
  * @param array $data
  * @return \eZ\Publish\API\Repository\Values\ContentType\ContentTypeDraft
  */
 private function getNewDraft(array &$data)
 {
     $struct = $this->contentTypeService->newContentTypeCreateStruct($data['identifier']);
     $this->fillValueObject($struct, $data);
     $struct->mainLanguageCode = $this->getContentDataMainLanguage($data);
     $groups = $this->getContentTypeGroups($data);
     return $this->contentTypeService->createContentType($struct, $groups);
 }
开发者ID:silversolutions,项目名称:content-loader-bundle,代码行数:14,代码来源:ContentType.php

示例3: createContentTypeAction

 public function createContentTypeAction(Request $request, $contentTypeGroupId, $languageCode = null)
 {
     $createForm = $this->createForm(new ContentTypeCreateType($this->contentTypeService), ['contentTypeGroupId' => $contentTypeGroupId]);
     $createForm->handleRequest($request);
     if ($createForm->isValid()) {
         $languageCode = $languageCode ?: $this->prioritizedLanguages[0];
         $contentTypeGroup = $this->contentTypeService->loadContentTypeGroup($createForm->getData()['contentTypeGroupId']);
         $contentTypeCreateStruct = new ContentTypeCreateStruct(['identifier' => '__new__' . md5(microtime(true)), 'mainLanguageCode' => $languageCode, 'names' => [$languageCode => 'New ContentType']]);
         $contentTypeDraft = $this->contentTypeService->createContentType($contentTypeCreateStruct, [$contentTypeGroup]);
         return $this->redirectToRouteAfterFormPost('admin_contenttypeUpdate', ['contentTypeId' => $contentTypeDraft->id, 'languageCode' => $languageCode]);
     }
     // Form validation failed. Send errors as notifications.
     foreach ($createForm->getErrors(true) as $error) {
         $this->notifyErrorPlural($error->getMessageTemplate(), $error->getMessagePluralization(), $error->getMessageParameters(), 'ezrepoforms_content_type');
     }
     return $this->redirectToRouteAfterFormPost('admin_contenttypeGroupView', ['contentTypeGroupId' => $contentTypeGroupId]);
 }
开发者ID:yed30,项目名称:PlatformUIBundle,代码行数:17,代码来源:ContentTypeController.php

示例4: createContentType

 /**
  * Creates a new content type draft in the given content type group
  *
  * @param $contentTypeGroupId
  *
  * @throws \eZ\Publish\Core\REST\Server\Exceptions\ForbiddenException
  * @throws \eZ\Publish\Core\REST\Server\Exceptions\BadRequestException
  * @return \eZ\Publish\Core\REST\Server\Values\CreatedContentType
  */
 public function createContentType($contentTypeGroupId, Request $request)
 {
     $contentTypeGroup = $this->contentTypeService->loadContentTypeGroup($contentTypeGroupId);
     $publish = $request->query->has('publish') && $request->query->get('publish') === 'true';
     try {
         $contentTypeDraft = $this->contentTypeService->createContentType($this->inputDispatcher->parse(new Message(array('Content-Type' => $request->headers->get('Content-Type'), '__publish' => $publish), $request->getContent())), array($contentTypeGroup));
     } catch (InvalidArgumentException $e) {
         throw new ForbiddenException($e->getMessage());
     } catch (ContentTypeValidationException $e) {
         throw new BadRequestException($e->getMessage());
     } catch (ContentTypeFieldDefinitionValidationException $e) {
         throw new BadRequestException($e->getMessage());
     } catch (Exceptions\Parser $e) {
         throw new BadRequestException($e->getMessage());
     }
     if ($publish) {
         $this->contentTypeService->publishContentTypeDraft($contentTypeDraft);
         $contentType = $this->contentTypeService->loadContentType($contentTypeDraft->id);
         return new Values\CreatedContentType(array('contentType' => new Values\RestContentType($contentType, $contentType->getFieldDefinitions())));
     }
     return new Values\CreatedContentType(array('contentType' => new Values\RestContentType($contentTypeDraft, $contentTypeDraft->getFieldDefinitions())));
 }
开发者ID:nlescure,项目名称:ezpublish-kernel,代码行数:31,代码来源:ContentType.php

示例5: createContentType

 /**
  * Create a Content Type object.
  *
  * The content type is created in the state STATUS_DRAFT.
  *
  * @throws \eZ\Publish\API\Repository\Exceptions\UnauthorizedException if the user is not allowed to create a content type
  * @throws \eZ\Publish\API\Repository\Exceptions\InvalidArgumentException In case when
  *         - array of content type groups does not contain at least one content type group
  *         - identifier or remoteId in the content type create struct already exists
  *         - there is a duplicate field identifier in the content type create struct
  *         - content type create struct does not contain at least one field definition create struct
  * @throws \eZ\Publish\API\Repository\Exceptions\ContentTypeFieldDefinitionValidationException
  *         if a field definition in the $contentTypeCreateStruct is not valid
  *
  * @param \eZ\Publish\API\Repository\Values\ContentType\ContentTypeCreateStruct $contentTypeCreateStruct
  * @param \eZ\Publish\API\Repository\Values\ContentType\ContentTypeGroup[] $contentTypeGroups Required array of
  *        {@link ContentTypeGroup} to link type with (must contain one)
  *
  * @return \eZ\Publish\API\Repository\Values\ContentType\ContentTypeDraft
  */
 public function createContentType(ContentTypeCreateStruct $contentTypeCreateStruct, array $contentTypeGroups)
 {
     $returnValue = $this->service->createContentType($contentTypeCreateStruct, $contentTypeGroups);
     $this->signalDispatcher->emit(new CreateContentTypeSignal(array('contentTypeId' => $returnValue->id)));
     return $returnValue;
 }
开发者ID:Jenkosama,项目名称:ezpublish-kernel,代码行数:26,代码来源:ContentTypeService.php


注:本文中的eZ\Publish\API\Repository\ContentTypeService::createContentType方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。