baserCMS Documentation

Githubでこのページを編集

Home / 5 / ucmitz / specification / bc widget area / ウィジェットエリア設計書

ウィジェットエリア設計書

ユースケース図

ユースケース図:ウィジェットエリア

機能

管理機能

一覧

ウィジェットエリアの一覧を表示する。

削除

ウィジェットエリアを削除する。

一括処理

一括処理として次の機能を提供する

新規作成

ウィジェットエリアを新しく作成する。作成時はウィジェットエリア名だけを入力する。

編集

利用できるウィジェットのから目的のウィジェットを選択してウィジェットエリアの機能を変更する事ができる。

フロント機能

ウィジェットエリア表示

管理画面での設定に応じてウィジェットエリアを表示する。
全ページ共通のウィジェットは、システム設定で選択ができる。
また、View変数、$currentWidgetArea をコントローラーやイベントで書き換える事で、表示するウィジェットを変更する事ができる。

また、ヘルパーで NO を直接指定する事もできる。

$this->BcBaser->widgetArea(2);

 

利用できるウィジェットを追加

管理画面側

ウィジェットの編集画面では、templates/Admin/element/widgets/ に配置したテンプレートを「利用できるウィジェット」として読み込む。

テンプレート内では、次の変数を定義しなければならない。

なお、入力欄を配置する場合には、フィールド名の名称の前に $key. を付けなければならない。

echo $this->BcAdminForm->control($key . '.text', [
  'type' => 'textarea',
  'cols' => 38,
  'rows' => 14
]);

フロントエンド側

フロントエンドでは、templates/element/widgets/ に配置したテンプレートを、管理画面のウィジェットエリア管理の「利用中のウィジェット」として設定したものに応じて読み込む。

テンプレート内では次の変数が利用できる。

// フィールド名を 「$key . '.text'」として定義した場合、「$text」として利用する事ができる
<div class="bs-widget bs-widget-text bs-widget-text-<?php echo $id ?>">
	<?php if ($name && $use_title): ?>
		<h2 class="bs-widget-head"><?php echo $name ?></h2>
	<?php endif ?>
	<?php echo $text ?>
</div>

 

ドメインモデル図

ドメインモデル図:ウィジェットエリア

 

クラス図

管理画面

クラス図:ウィジェットエリア管理

API

クラス図:ウィジェットエリア管理