「ver4/関数リファレンス/getCategoryList」の版間の差分
提供: baserCMS公式ガイド
細 (1版 : 関数リファレンス→ver4) |
Katokaisya (トーク | 投稿記録) |
||
行6: | 行6: | ||
## 使い方 | ## 使い方 | ||
<syntaxhighlight lang="php"> | <syntaxhighlight lang="php"> | ||
− | $this->Blog->getCategoryList( $categories , | + | $this->Blog->getCategoryList( [$categories] , $depth , $count , [$options] ) |
</syntaxhighlight> | </syntaxhighlight> | ||
## パラメータ | ## パラメータ | ||
− | $categories | + | (array) $categories |
− | : | + | : カテゴリ一覧データ |
: 初期値なし | : 初期値なし | ||
: 先頭にスラッシュをつけた場合は、/app/webroot/ からのパスとなる。 | : 先頭にスラッシュをつけた場合は、/app/webroot/ からのパスとなる。 | ||
行17: | 行17: | ||
: テーマを使用している場合は、/app/webroot/themed/{テーマ名}/imgからのパスとなる。 | : テーマを使用している場合は、/app/webroot/themed/{テーマ名}/imgからのパスとなる。 | ||
− | $depth | + | (int) $depth |
− | : | + | : 出力するカテゴリー一覧の階層の深さを指定します。TOPレベルの階層だけ欲しい場合は"1" |
- 初期値:3 | - 初期値:3 | ||
− | $count | + | (boolean) $count |
− | : | + | : 記事件数を表示するかどうかを指定します。 |
: 初期値:false | : 初期値:false | ||
+ | |||
+ | (array) $options | ||
+ | : オプション | ||
+ | : 初期値 : array() | ||
+ | : | ||
+ | * - `link` : リンクをつけるかどうか(初期値 : true) | ||
+ | : ※ その他のオプションは、'link'オプションが'true'の場合に | ||
+ | : 生成されるa要素の属性設定となる。(HtmlHelper::link() を参照) | ||
## 戻り値 | ## 戻り値 | ||
(string) | (string) | ||
− | : | + | : HTMLのカテゴリ一覧( ul>li>a>カテゴリ名) |
## 用例 | ## 用例 |
2016年11月4日 (金) 20:44時点における最新版
[このコンテンツは内容調整中です]
目次
説明
ブログのカテゴリーの一覧をリストタグで取得できます。
使い方
$this->Blog->getCategoryList( [$categories] , $depth , $count , [$options] )
パラメータ
- (array) $categories
- カテゴリ一覧データ
- 初期値なし
- 先頭にスラッシュをつけた場合は、/app/webroot/ からのパスとなる。
- スラッシュをつけず相対パスとした場合は、/app/webroot/img/ からのパスとなる。
- テーマを使用している場合は、/app/webroot/themed/{テーマ名}/imgからのパスとなる。
- (int) $depth
-
出力するカテゴリー一覧の階層の深さを指定します。TOPレベルの階層だけ欲しい場合は"1"
- 初期値:3
- (boolean) $count
- 記事件数を表示するかどうかを指定します。
- 初期値:false
- (array) $options
- オプション
- 初期値 : array()
- -
link
: リンクをつけるかどうか(初期値 : true)
- ※ その他のオプションは、'link'オプションが'true'の場合に
- 生成されるa要素の属性設定となる。(HtmlHelper::link() を参照)
戻り値
- (string)
- HTMLのカテゴリ一覧( ul>li>a>カテゴリ名)
用例
基本
コード
// 表示ブログ記事のカテゴリ一覧を第一階層のみ出力 if($this->Blog->isSingle()) { //詳細記事の時 $blog_id = $post['BlogPost']['blog_content_id']; //現在表示記事からブログIDを取得 } else { $blog_id = $posts[0]['BlogPost']['blog_content_id']; //記事一覧の1記事目から現在表示中のブログIDを取得 } $actionUrl = '/blog/blog/get_categories/'.$blog_id.'/'; $data = $this->requestAction($actionUrl); $categories = $data['categories']; echo $this->Blog->getCategoryList( $categories , 1 );
出力
<ul class="depth-1"> <li><a href="/blogslug/archives/category/category1">カテゴリ1</a></li> <li><a href="/blogslug/archives/category/category2">カテゴリ2</a></li> <li><a href="/blogslug/archives/category/category3">カテゴリ3</a></li> </ul>
応用
コード
<?php // 指定ブログのカテゴリ全て取得する $blog_id = 3; //取得したいカテゴリID $limit = 0; //取得件数: 0 = 全て $view_count = 1; //記事件数のカウント 0:を含めない / 1:含める $depth = 100; //取得する階層(最大まで取得しておく) $actionUrl = '/blog/blog/get_categories/'.$blog_id.'/'.$limit.'/'.$view_count.'/'.$depth; $data = $this->requestAction($actionUrl); $categories = $data['categories']; echo $this->Blog->getCategoryList( $categories , 3 , true ); //第2引数で表示階層を指定 ?>
出力
<ul class="depth-1"> <li><a href="/blogslug/archives/category/category1">カテゴリ1(3)</a></li> <li><a href="/blogslug/archives/category/category2">カテゴリ2(20)</a> <ul class="depth-2"> <li><a href="/blogslug/archives/category/category2/subcategory2-1">カテゴリ2-1(10)</a> <ul class="depth-3"> <li><a href="/blogslug/archives/category/category2/subcategory2-1/subcategory2-1-1">カテゴリ2-1-1(5)</a></li> <li><a href="/blogslug/archives/category/category2/subcategory2-1/subcategory2-1-2">カテゴリ2-1-2(5)</a></li> </ul> </li> </ul> </li> </ul>
注
※要望)$optionの指定なしのデフォルトで、表示ブログのカテゴリ一覧のリストが出力できるように
変更履歴
ソースファイル
baserCMS API Document » \BlogHelper http://api.basercms.net/classes/BlogHelper.html#method_getCategoryList
関連資料
baserCMS getCategoryListの使い方について | エス技研