PHP 클래스 eZ\Publish\Core\Helper\TranslationHelper

파일 보기 프로젝트 열기: ezsystems/ezpublish-kernel 1 사용 예제들

보호된 프로퍼티들

프로퍼티 타입 설명
$configResolver eZ\Publish\Core\MVC\ConfigResolverInterface
$contentService eZ\Publish\API\Repository\ContentService

공개 메소드들

메소드 설명
__construct ( eZ\Publish\Core\MVC\ConfigResolverInterface $configResolver, eZ\Publish\API\Repository\ContentService $contentService, array $siteAccessesByLanguage, Psr\Log\LoggerInterface $logger = null )
getAvailableLanguages ( ) : array Returns the list of all available languages, including the ones configured in related SiteAccesses.
getTranslatedByMethod ( eZ\Publish\API\Repository\Values\ValueObject $object, string $method, string $forcedLanguage = null ) : string | null Gets translated method generic helper.
getTranslatedByProperty ( eZ\Publish\API\Repository\Values\ValueObject $object, string $property, string $forcedLanguage = null ) : string | null Gets translated property generic helper.
getTranslatedContentName ( eZ\Publish\API\Repository\Values\Content\Content $content, string $forcedLanguage = null ) : string Returns content name, translated.
getTranslatedContentNameByContentInfo ( eZ\Publish\API\Repository\Values\Content\ContentInfo $contentInfo, string $forcedLanguage = null ) : string Returns content name, translated, from a ContentInfo object.
getTranslatedField ( eZ\Publish\API\Repository\Values\Content\Content $content, string $fieldDefIdentifier, string $forcedLanguage = null ) : eZ\Publish\API\Repository\Values\Content\Field | null Returns Field object in the appropriate language for a given content.
getTranslatedFieldDefinitionProperty ( eZ\Publish\API\Repository\Values\ContentType\ContentType $contentType, string $fieldDefIdentifier, string $property = 'name', string $forcedLanguage = null ) : string | null Returns Field definition name in the appropriate language for a given content.
getTranslationSiteAccess ( string $languageCode ) : string | null Returns a SiteAccess name for translation in $languageCode.

비공개 메소드들

메소드 설명
getLanguages ( string | null $forcedLanguage = null, string | null $fallbackLanguage = null ) : array | mixed
getTranslatedContentNameByVersionInfo ( eZ\Publish\API\Repository\Values\Content\VersionInfo $versionInfo, string $forcedLanguage = null ) : string Returns content name, translated, from a VersionInfo object.

메소드 상세

__construct() 공개 메소드

public __construct ( eZ\Publish\Core\MVC\ConfigResolverInterface $configResolver, eZ\Publish\API\Repository\ContentService $contentService, array $siteAccessesByLanguage, Psr\Log\LoggerInterface $logger = null )
$configResolver eZ\Publish\Core\MVC\ConfigResolverInterface
$contentService eZ\Publish\API\Repository\ContentService
$siteAccessesByLanguage array
$logger Psr\Log\LoggerInterface

getAvailableLanguages() 공개 메소드

Returns the list of all available languages, including the ones configured in related SiteAccesses.
public getAvailableLanguages ( ) : array
리턴 array

getTranslatedByMethod() 공개 메소드

For generic use, expects method exposing translated property as-is on value object, typically $object->$method($language) Languages will consist of either forced language or current languages list, in addition helper will append null to list of languages so method may fallback to main/initial language if supported by domain.
public getTranslatedByMethod ( eZ\Publish\API\Repository\Values\ValueObject $object, string $method, string $forcedLanguage = null ) : string | null
$object eZ\Publish\API\Repository\Values\ValueObject Can be any kind of Value object which directly holds the methods that provides translated value.
$method string Method name, example 'getName', 'description'
$forcedLanguage string Locale we want the content name translation in (e.g. "fre-FR"). Null by default (takes current locale)
리턴 string | null

getTranslatedByProperty() 공개 메소드

For generic use, expects array property as-is on value object, typically $object->$property[$language] Languages will consist of either forced language or current languages list, in addition helper will check if for mainLanguage property and append that to languages if alwaysAvailable property is true or non-existing.
public getTranslatedByProperty ( eZ\Publish\API\Repository\Values\ValueObject $object, string $property, string $forcedLanguage = null ) : string | null
$object eZ\Publish\API\Repository\Values\ValueObject Can be any kid of Value object which directly holds the translated property
$property string Property name, example 'names', 'descriptions'
$forcedLanguage string Locale we want the content name translation in (e.g. "fre-FR"). Null by default (takes current locale)
리턴 string | null

getTranslatedContentName() 공개 메소드

By default this method uses prioritized languages, unless $forcedLanguage is provided.
public getTranslatedContentName ( eZ\Publish\API\Repository\Values\Content\Content $content, string $forcedLanguage = null ) : string
$content eZ\Publish\API\Repository\Values\Content\Content
$forcedLanguage string Locale we want the content name translation in (e.g. "fre-FR"). Null by default (takes current locale)
리턴 string

getTranslatedContentNameByContentInfo() 공개 메소드

By default this method uses prioritized languages, unless $forcedLanguage is provided.
public getTranslatedContentNameByContentInfo ( eZ\Publish\API\Repository\Values\Content\ContentInfo $contentInfo, string $forcedLanguage = null ) : string
$contentInfo eZ\Publish\API\Repository\Values\Content\ContentInfo
$forcedLanguage string Locale we want the content name translation in (e.g. "fre-FR"). Null by default (takes current locale)
리턴 string

getTranslatedField() 공개 메소드

By default, this method will return the field in current language if translation is present. If not, main language will be used. If $forcedLanguage is provided, will return the field in this language, if translation is present.
public getTranslatedField ( eZ\Publish\API\Repository\Values\Content\Content $content, string $fieldDefIdentifier, string $forcedLanguage = null ) : eZ\Publish\API\Repository\Values\Content\Field | null
$content eZ\Publish\API\Repository\Values\Content\Content
$fieldDefIdentifier string Field definition identifier.
$forcedLanguage string Locale we want the field translation in (e.g. "fre-FR"). Null by default (takes current locale)
리턴 eZ\Publish\API\Repository\Values\Content\Field | null

getTranslatedFieldDefinitionProperty() 공개 메소드

By default, this method will return the field definition name in current language if translation is present. If not, main language will be used. If $forcedLanguage is provided, will return the field definition name in this language, if translation is present.
public getTranslatedFieldDefinitionProperty ( eZ\Publish\API\Repository\Values\ContentType\ContentType $contentType, string $fieldDefIdentifier, string $property = 'name', string $forcedLanguage = null ) : string | null
$contentType eZ\Publish\API\Repository\Values\ContentType\ContentType
$fieldDefIdentifier string Field Definition identifier
$property string Specifies if 'name' or 'description' should be used
$forcedLanguage string Locale we want the field definition name translated in in (e.g. "fre-FR"). Null by default (takes current locale)
리턴 string | null

getTranslationSiteAccess() 공개 메소드

This is used for LanguageSwitcher feature (generate links for current content in a different language if available). Will use configured translation_siteaccesses if any. Otherwise will use related siteaccesses (e.g. same repository, same rootLocationId). Will return null if no translation SiteAccess can be found.
public getTranslationSiteAccess ( string $languageCode ) : string | null
$languageCode string Translation language code.
리턴 string | null

프로퍼티 상세

$configResolver 보호되어 있는 프로퍼티

protected ConfigResolverInterface,eZ\Publish\Core\MVC $configResolver
리턴 eZ\Publish\Core\MVC\ConfigResolverInterface

$contentService 보호되어 있는 프로퍼티

protected ContentService,eZ\Publish\API\Repository $contentService
리턴 eZ\Publish\API\Repository\ContentService