CategoryHelper
extends BaseHelper
in package
uses
FieldTrait, EagerLoadingTrait
Table of Contents
Properties
- $bids : array<string|int, int>
- $cids : array<string|int, int>
- $eids : array<string|int, int>
- $uids : array<string|int, int>
- $bid : int
- $blogAxis : string
- $categoryAxis : string
- $cid : int|null
- $config : mixed
- $countQuery : SQL_Select
- $eid : int|null
- $end : string|null
- $Field : Field_Search|null
- $keyword : string|null
- $order : string
- $page : int
- $sortFields : array<string|int, mixed>
- $start : string|null
- $tags : array<string|int, string>
- $uid : int|null
Methods
- __construct() : mixed
- コンストラクタ
- buildCategoryListQuery() : SQL_Select
- カテゴリー一覧を取得するSQLを生成する
- buildTree() : array<string|int, mixed>
- カテゴリツリーを構築する
- canAccessCategory() : bool
- カテゴリーへのアクセス権限を確認する
- eagerLoadCategoryField() : array<string|int, mixed>
- カテゴリフィールドを一括で取得する
- fixCategoryTreeData() : array<string|int, mixed>
- カテゴリツリーのデータを整形する
- getCategoryIdsFromTree() : array<string|int, int>
- カテゴリツリーからカテゴリIDのリストを取得する
- removeEmptyCategories() : array<string|int, mixed>
- カテゴリツリーから空のカテゴリを削除する
- setProperty() : void
- プロパティの設定
- sortTree() : array<string|int, mixed>
- autoConvertTypeTrait() : array<string|int, mixed>
- 自動で型変換
- buildBasicFieldGroupTrait() : array<string|int, mixed>
- 基本カスタムフィールドグループを組み立て
- buildBasicFieldTrait() : array<string|int, mixed>
- 基本カスタムフィールドを組み立て
- buildFieldTrait() : array<string|int, mixed>|null
- フィールドを連想配列として組み立て
- buildMultiFieldGroupTrait() : array<string|int, mixed>
- 複数項目をもつカスタムフィールドグループを組み立て
- buildMultiFieldTrait() : array<string|int, mixed>
- 複数項目をもつカスタムフィールドを組み立て
- eagerLoadEntryTrait() : array<int, array<string, mixed>>
- エントリーのEagerLoading
- eagerLoadFieldTrait() : Field>)
- eagerLoadFullTextTrait() : array<int<1, max>, UnitCollection>
- フルテキストのEagerLoading
- eagerLoadMainImageFieldTrait() : array<int, array<string|int, mixed>>
- 指定したエントリーカスタムフィールドのメインイメージをEagerLoadする
-
eagerLoadMainImageTrait()
: , media: array
, fieldMainImage: array } : array{unit: array , media: array })">Model>, media: array }) - メインイメージのEagerLoading
- eagerLoadRelatedEntryTrait() : array<string|int, mixed>
- 関連記事のEagerLoading
- eagerLoadSubCategoriesTrait() : array<string|int, array<int, array<string, mixed>>>
- サブカテゴリーのEagerLoading
- eagerLoadTagTrait() : array<string|int, mixed>
- タグのEagerLoading
- extractGroupFieldKeysTrait() : array<string|int, mixed>
- グループフィールドのキーを抜き出す
- extractNonGroupFieldKeysTrait() : array<string|int, mixed>
- グループフィールドのキーを除いてキーを取得
- formatFieldKeysTrait() : array<string|int, mixed>
- フィールドキー配列を整形
Properties
$bids
public
array<string|int, int>
$bids
= []
$cids
public
array<string|int, int>
$cids
= []
$eids
public
array<string|int, int>
$eids
= []
$uids
public
array<string|int, int>
$uids
= []
$bid
protected
int
$bid
= null
$blogAxis
protected
string
$blogAxis
= 'self'
$categoryAxis
protected
string
$categoryAxis
= 'self'
$cid
protected
int|null
$cid
= null
$config
protected
mixed
$config
$countQuery
protected
SQL_Select
$countQuery
$eid
protected
int|null
$eid
= null
$end
protected
string|null
$end
= null
$Field
protected
Field_Search|null
$Field
= null
$keyword
protected
string|null
$keyword
= null
$order
protected
string
$order
= 'desc'
$page
protected
int
$page
= 1
$sortFields
protected
array<string|int, mixed>
$sortFields
= []
$start
protected
string|null
$start
= null
$tags
protected
array<string|int, string>
$tags
= []
$uid
protected
int|null
$uid
= null
Methods
__construct()
コンストラクタ
public
__construct(array<string|int, mixed> $params) : mixed
Parameters
- $params : array<string|int, mixed>
buildCategoryListQuery()
カテゴリー一覧を取得するSQLを生成する
public
buildCategoryListQuery(int $bid, int|null $cid, string $categoryAxis, string|null $keyword, Field_Search|null $field, string|null $start, string|null $end, "entry"|"category" $searchType, bool $indexing, bool $countEntryInSubcategories) : SQL_Select
Parameters
- $bid : int
- $cid : int|null
- $categoryAxis : string
- $keyword : string|null
- $field : Field_Search|null
- $start : string|null
- $end : string|null
- $searchType : "entry"|"category"
- $indexing : bool
- $countEntryInSubcategories : bool
Return values
SQL_SelectbuildTree()
カテゴリツリーを構築する
public
buildTree(array<string|int, mixed> $categories[, int $parentId = 0 ][, int $depth = 0 ][, int $maxDepth = 99 ]) : array<string|int, mixed>
Parameters
- $categories : array<string|int, mixed>
- $parentId : int = 0
- $depth : int = 0
- $maxDepth : int = 99
Return values
array<string|int, mixed>canAccessCategory()
カテゴリーへのアクセス権限を確認する
public
canAccessCategory(int $cid) : bool
Parameters
- $cid : int
Return values
booleagerLoadCategoryField()
カテゴリフィールドを一括で取得する
public
eagerLoadCategoryField(array<string|int, int> $categoryIds) : array<string|int, mixed>
Parameters
- $categoryIds : array<string|int, int>
Return values
array<string|int, mixed>fixCategoryTreeData()
カテゴリツリーのデータを整形する
public
fixCategoryTreeData(int $bid, array<string|int, mixed> $categories, bool $showEntryCount, bool $showGeolocation, array<string|int, Field>|null $eagerLoadedField) : array<string|int, mixed>
Parameters
- $bid : int
- $categories : array<string|int, mixed>
- $showEntryCount : bool
- $showGeolocation : bool
- $eagerLoadedField : array<string|int, Field>|null
Return values
array<string|int, mixed>getCategoryIdsFromTree()
カテゴリツリーからカテゴリIDのリストを取得する
public
getCategoryIdsFromTree(array<string|int, mixed> $categories) : array<string|int, int>
Parameters
- $categories : array<string|int, mixed>
Return values
array<string|int, int>removeEmptyCategories()
カテゴリツリーから空のカテゴリを削除する
public
removeEmptyCategories(array<string|int, mixed> $categories) : array<string|int, mixed>
Parameters
- $categories : array<string|int, mixed>
Return values
array<string|int, mixed>setProperty()
プロパティの設定
public
setProperty(string $name, mixed $value) : void
Parameters
- $name : string
- $value : mixed
sortTree()
public
sortTree(mixed $tree, string $key[, bool $isAsc = true ]) : array<string|int, mixed>
Parameters
- $tree : mixed
- $key : string
- $isAsc : bool = true
Return values
array<string|int, mixed>autoConvertTypeTrait()
自動で型変換
protected
autoConvertTypeTrait(array<string|int, mixed> $values) : array<string|int, mixed>
Parameters
- $values : array<string|int, mixed>
Return values
array<string|int, mixed>buildBasicFieldGroupTrait()
基本カスタムフィールドグループを組み立て
protected
buildBasicFieldGroupTrait(array<string|int, mixed> $keys, Field|Field_Validation $field, array<string|int, mixed> $initial) : array<string|int, mixed>
Parameters
- $keys : array<string|int, mixed>
- $field : Field|Field_Validation
- $initial : array<string|int, mixed>
Return values
array<string|int, mixed>buildBasicFieldTrait()
基本カスタムフィールドを組み立て
protected
buildBasicFieldTrait(array<string|int, mixed> $keys, Field|Field_Validation $field, array<string|int, mixed> $initial) : array<string|int, mixed>
Parameters
- $keys : array<string|int, mixed>
- $field : Field|Field_Validation
- $initial : array<string|int, mixed>
Return values
array<string|int, mixed>buildFieldTrait()
フィールドを連想配列として組み立て
protected
buildFieldTrait(Field|Field_Validation $field[, string|null $scp = null ]) : array<string|int, mixed>|null
Parameters
- $field : Field|Field_Validation
- $scp : string|null = null
Return values
array<string|int, mixed>|nullbuildMultiFieldGroupTrait()
複数項目をもつカスタムフィールドグループを組み立て
protected
buildMultiFieldGroupTrait(array<string|int, mixed> $items, Field|Field_Validation $field, array<string|int, mixed> $initial) : array<string|int, mixed>
Parameters
- $items : array<string|int, mixed>
- $field : Field|Field_Validation
- $initial : array<string|int, mixed>
Return values
array<string|int, mixed>buildMultiFieldTrait()
複数項目をもつカスタムフィールドを組み立て
protected
buildMultiFieldTrait(array<string|int, mixed> $items, Field|Field_Validation $field, array<string|int, mixed> $initial) : array<string|int, mixed>
Parameters
- $items : array<string|int, mixed>
- $field : Field|Field_Validation
- $initial : array<string|int, mixed>
Return values
array<string|int, mixed>eagerLoadEntryTrait()
エントリーのEagerLoading
protected
eagerLoadEntryTrait(array<string|int, int> $ids) : array<int, array<string, mixed>>
Parameters
- $ids : array<string|int, int>
Return values
array<int, array<string, mixed>>eagerLoadFieldTrait()
protected
eagerLoadFieldTrait(array<string|int, int>|array<string|int, string> $ids, "eid"|"uid"|"bid"|"cid"|"mid"|"unit_id" $type[, int|null $rvid = null ]) : Field>)
Parameters
- $ids : array<string|int, int>|array<string|int, string>
- $type : "eid"|"uid"|"bid"|"cid"|"mid"|"unit_id"
- $rvid : int|null = null
Return values
Field>)eagerLoadFullTextTrait()
フルテキストのEagerLoading
protected
eagerLoadFullTextTrait(array<string|int, int> $entryIds) : array<int<1, max>, UnitCollection>
Parameters
- $entryIds : array<string|int, int>
Return values
array<int<1, max>, UnitCollection>eagerLoadMainImageFieldTrait()
指定したエントリーカスタムフィールドのメインイメージをEagerLoadする
protected
eagerLoadMainImageFieldTrait(array<string|int, mixed> $entryIds, string $fieldName[, int|null $rvid = null ]) : array<int, array<string|int, mixed>>
Parameters
- $entryIds : array<string|int, mixed>
- $fieldName : string
- $rvid : int|null = null
Return values
array<int, array<string|int, mixed>>eagerLoadMainImageTrait()
メインイメージのEagerLoading
protected
eagerLoadMainImageTrait(mixed $entries[, mixed $target = 'unit' ][, mixed $fieldName = '' ][, int|null $rvid = null ]) : , media: array, fieldMainImage: array} : array{unit: array, media: array})">Model>, media: array})
Parameters
- $entries : mixed
- $target : mixed = 'unit'
-
'unit'|'field'
- $fieldName : mixed = ''
-
?string
- $rvid : int|null = null
Return values
, media: arrayeagerLoadRelatedEntryTrait()
関連記事のEagerLoading
protected
eagerLoadRelatedEntryTrait(array<string|int, int> $eidArray) : array<string|int, mixed>
Parameters
- $eidArray : array<string|int, int>
Return values
array<string|int, mixed>eagerLoadSubCategoriesTrait()
サブカテゴリーのEagerLoading
protected
eagerLoadSubCategoriesTrait(array<string|int, int> $eidArray[, null|int $rvid = null ]) : array<string|int, array<int, array<string, mixed>>>
Parameters
- $eidArray : array<string|int, int>
- $rvid : null|int = null
Return values
array<string|int, array<int, array<string, mixed>>>eagerLoadTagTrait()
タグのEagerLoading
protected
eagerLoadTagTrait(array<string|int, int> $eidArray[, int|null $rvid = null ]) : array<string|int, mixed>
Parameters
- $eidArray : array<string|int, int>
- $rvid : int|null = null
Return values
array<string|int, mixed>extractGroupFieldKeysTrait()
グループフィールドのキーを抜き出す
protected
extractGroupFieldKeysTrait(Field|Field_Validation $field, array<string|int, mixed> $fieldKeys) : array<string|int, mixed>
Parameters
- $field : Field|Field_Validation
- $fieldKeys : array<string|int, mixed>
Return values
array<string|int, mixed>extractNonGroupFieldKeysTrait()
グループフィールドのキーを除いてキーを取得
protected
extractNonGroupFieldKeysTrait(array<string|int, mixed> $fieldKeys, array<string|int, mixed> $groupKeys) : array<string|int, mixed>
Parameters
- $fieldKeys : array<string|int, mixed>
- $groupKeys : array<string|int, mixed>
Return values
array<string|int, mixed>formatFieldKeysTrait()
フィールドキー配列を整形
protected
formatFieldKeysTrait(array<string|int, mixed> $fieldKeys) : array<string|int, mixed>
Parameters
- $fieldKeys : array<string|int, mixed>