連載第4回!CS-Cart3アドオン作成講座 -初級編-「ブロックテンプレートの作成」

アドオン作成講座 -初級編- vol4

いよいよ最終回になりました!
CS-Cartのアドオン作成のお作法です。

今回はブロックテンプレートの作成方法を学んでいきます。

  

この記事は1年以上前に書かれたものです。
情報が古い可能性があります。

検証バージョン

CS-Cart Free Edition v3.0.2-jp-1 を使用して検証しています。

INDEX

1. 前回のおさらい

前回の内容
前回の記事では基本設定ページで保存した値を取得して表示するために、テンプレートフックを使ってフッタ部分に値を表示するところまで行いました。

しかしせっかくCS-Cart3には ブロックマネージャ がありますので、好きな箇所にテンプレートを配置して値を表示できるようにしたいものです。

そこでブロックマネージャに独自のテンプレートを表示して選択できるようにしましょう。

2. ブロックテンプレートの作成

var/skins_repository/basic/customer/addons/webcake/blocks/webcake_addon_block.tpl
ブロックテンプレートの作成

<!--
	設置パス: /var/skins_repository/basic/customer/addons/webcake/blocks/webcake_addon_block.tpl
	
	アドオン有効後に /skins/basic/customer/addons/webcake/blocks/webcake_addon_block.tpl にコピーされる
	$addons.アドオンの識別子.アイテムの識別子	
-->

<strong>{$addons.webcake.input}</strong>

var/skins_repository/basic/customer/addons/webcake/blocks の中にテンプレートファイル webcake_addon_block.tpl を作成します。
前回同様、基本設定ページで保存した値を取得して表示するといったものです。

作成するディレクトリ内の basic の部分は使用するスキンによって、webcake の部分はアドオンの識別子によって変わりますのでご注意ください

3. ブロックマネージャに表示させるには

addons/webcake/schemas/block_manager/blocks.post.php
ブロックマネージャーに表示させる為に

<?php
if ( !defined('AREA') ) { die('Access denied'); }

$schema['webcake_addon_block'] = array (
	'templates' => array (
		'addons/webcake/blocks/webcake_addon_block.tpl' => array()
	), 
	'wrappers' => 'blocks/wrappers',
);
?>

addons/webcake/schemas/block_manager の中に blocks.post.php というファイルを作成します。
先ほど作成したテンプレートファイルを配列に指定しましょう。

ブロックの追加1
管理画面メニューの デザイン から ブロック を選択します。

ブロックの管理 ボタンを押して ブロックの追加 タブを選択すると、オリジナルのブロックが選択出来るようになっています。

ブロックの追加2
ブロックの名前を入力してテンプレートを選択し、登録 ボタンを押します。
ここのテンプレートの名前は例えば画像の例で言うと webcake_addon_block という言語変数を追加すればローカライズも可能です。

ブロックの追加3
ロゴの下にオリジナルのブロックを配置してみましょう。

ショップフロントページ
ショップフロントページを確認してみます。
基本設定ページで保存した値がロゴの下に表示されていますね!

4. サンプルファイルの配布

今回もサンプルを配布します:)

5. まとめ

congratulation
いかがでしたでしょうか?
全4回に渡ってCS-Cart3のアドオンの作成方法について学んできました。

ブロックテンプレートの作成にはphpファイルを作成する必要がありましたが、ほとんどプログラムを組まずにここまでやってこれました。

実は、CS-Cartのエディションによってアドオンの使用を限定出来たり、インストール時やアンインストール時の動作オプションを指定出来たり、アドオンの依存関係を指定出来たりと、まだまだ奥の深いアドオン作成ですが今回の連載はこれで終了です。

お付き合いいただきありがとうございました!

おまけ

CS-Cartのサイト(英語ですが)チュートリアルがございますので、よろしければそちらもどうぞ。

連載記事目次

  

共有やブックマークなど