本文整理匯總了PHP中eZ\Publish\SPI\Persistence\Content\Type\Handler::link方法的典型用法代碼示例。如果您正苦於以下問題:PHP Handler::link方法的具體用法?PHP Handler::link怎麽用?PHP Handler::link使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類eZ\Publish\SPI\Persistence\Content\Type\Handler
的用法示例。
在下文中一共展示了Handler::link方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: assignContentTypeGroup
/**
* Assigns a content type to a content type group.
*
* @throws \eZ\Publish\API\Repository\Exceptions\UnauthorizedException if the user is not allowed to unlink a content type
* @throws \eZ\Publish\API\Repository\Exceptions\InvalidArgumentException If the content type is already assigned the given group
*
* @param \eZ\Publish\API\Repository\Values\ContentType\ContentType $contentType
* @param \eZ\Publish\API\Repository\Values\ContentType\ContentTypeGroup $contentTypeGroup
*/
public function assignContentTypeGroup( APIContentType $contentType, APIContentTypeGroup $contentTypeGroup )
{
if ( $this->repository->hasAccess( 'class', 'update' ) !== true )
throw new UnauthorizedException( 'ContentType', 'update' );
$spiContentType = $this->contentTypeHandler->load(
$contentType->id,
$contentType->status
);
if ( in_array( $contentTypeGroup->id, $spiContentType->groupIds ) )
{
throw new InvalidArgumentException(
"\$contentTypeGroup",
"The given ContentType is already assigned to the ContentTypeGroup"
);
}
$this->repository->beginTransaction();
try
{
$this->contentTypeHandler->link(
$contentTypeGroup->id,
$contentType->id,
$contentType->status
);
$this->repository->commit();
}
catch ( Exception $e )
{
$this->repository->rollback();
throw $e;
}
}
示例2: link
/**
* Link a content type group with a content type
*
* @param mixed $groupId
* @param mixed $contentTypeId
* @throws \eZ\Publish\API\Repository\Exceptions\NotFoundException If group or type with provided status is not found
* @throws \eZ\Publish\API\Repository\Exceptions\BadStateException If type is already part of group
* @todo Above throws are not implemented
*/
public function link($groupId, $contentTypeId, $status)
{
$this->clearCache();
return $this->innerHandler->link($groupId, $contentTypeId, $status);
}