template_utility
Pickles2 Multi Theme template utility class
Table of Contents
- $multitheme : mixed
- px2-multithemeオブジェクト
- $px : mixed
- Picklesオブジェクト
- __construct() : mixed
- constructor
- files() : string
- テーマリソースへのパスを取得する
- get_attr_bowl_name_by() : string
- $conf->attr_bowl_name_by 設定の値を受け取る
- get_layout() : mixed
- 選択されたレイアウト名を取得する
- get_option() : mixed
- テーマごとのオプションを取得する
- mk_breadcrumb() : string
- パンくずを自動生成する
- mk_global_menu() : string
- グローバルメニューを自動生成する
- mk_megafooter_menu() : string
- メガフッターメニューを自動生成する
- mk_shoulder_menu() : string
- ショルダーメニューを自動生成する
- mk_sub_menu() : string
- 指定されたページの子階層のメニューを展開する
Properties
$multitheme
px2-multithemeオブジェクト
private
mixed
$multitheme
$px
Picklesオブジェクト
private
mixed
$px
Methods
__construct()
constructor
public
__construct(object $px, object $multitheme) : mixed
Parameters
- $px : object
-
Picklesオブジェクト
- $multitheme : object
-
px2-multithemeオブジェクト
Return values
mixed —files()
テーマリソースへのパスを取得する
public
files(string $path_resource) : string
Parameters
- $path_resource : string
-
theme_files
をルートとしたリソースのパス
Return values
string —リソースへの実際のパス
get_attr_bowl_name_by()
$conf->attr_bowl_name_by 設定の値を受け取る
public
get_attr_bowl_name_by() : string
このメソッドが返す値は、 テーマのコンテンツエリアを囲うラッパー要素にセットされるべき、bowl名を格納するための属性名です。
デフォルトは data-contents-area
ですが、コンフィグオプションで変更することができます。
bowl main
は次のように実装します。
<div class="contents" <?= htmlspecialchars($theme->get_attr_bowl_name_by())?>="main">
<?= $px->bowl()->pull() ?>
</div>
独自の名前 hoge
という bowl を作るには、次のように実装します。
<div class="contents" <?= htmlspecialchars($theme->get_attr_bowl_name_by())?>="hoge">
<?= $px->bowl()->pull('hoge') ?>
</div>
この値は、 Pickles 2 Desktop Tool のGUI編集機能が、テーマの画面から編集可能領域を探しだすために利用します。
Return values
string —bowl名を格納するための属性名
get_layout()
選択されたレイアウト名を取得する
public
get_layout() : mixed
レイアウトは、Pickles 2 のサイトマップCSVの layout 列に指定すると選択できます。
layout列には、拡張子を含まない値を指定してください。
レイアウト hoge.html
を選択したい場合、 layout列には hoge
と入力します。
layout列が空白の場合、 default.html
が選択されます。
Return values
mixed —get_option()
テーマごとのオプションを取得する
public
get_option(string $key) : mixed
コンフィグオプションに指定されたテーマ別設定の値を取り出します。
Parameters
- $key : string
-
取り出したいオプションのキー
Return values
mixed —mk_breadcrumb()
パンくずを自動生成する
public
mk_breadcrumb() : string
このメソッドは、パンくずリストのHTMLコードを生成して返します。 祖先ページは aタグ で囲われ、カレントページは aタグの代わりに spanタグ で囲われます。
Return values
string —パンくずのHTMLコード
mk_global_menu()
グローバルメニューを自動生成する
public
mk_global_menu() : string
サイトマップCSVに登録されたページの一覧から、グローバルメニューを自動生成し、HTMLコードを返します。
対象となるページの一覧は、 $px->site()->get_global_menu()
から取得します。
Return values
string —HTMLコード
mk_megafooter_menu()
メガフッターメニューを自動生成する
public
mk_megafooter_menu() : string
メガフッターに表示する項目として、グローバルメニューの一覧と、その子階層までの一覧を構造化し、HTMLコードとして生成します。
Return values
string —メガフッターのHTMLコード
mk_shoulder_menu()
ショルダーメニューを自動生成する
public
mk_shoulder_menu() : string
サイトマップCSVに登録されたページの一覧から、ショルダーメニューを自動生成し、HTMLコードを返します。
対象となるページの一覧は、 $px->site()->get_shoulder_menu()
から取得します。
Return values
string —HTMLコード
mk_sub_menu()
指定されたページの子階層のメニューを展開する
public
mk_sub_menu(string $parent_page_id) : string
主にローカルナビゲーションを生成する用途を想定したメソッドです。 $parent_page_id
に与えられたページを頂点として、ページの階層構造を HTML化して生成します。
カレントページの直系の祖先にあたる階層は、子階層が開かれた状態で生成され、直系に当たらない階層は隠されます。
Parameters
- $parent_page_id : string
-
親ページのページID
Return values
string —ページリストのHTMLコード