36
ハンズオンセミナー 2014.01.18

CSCart4のHands-onセミナー 20140118

Embed Size (px)

Citation preview

Page 1: CSCart4のHands-onセミナー 20140118

ハンズオンセミナー 2014.01.18

Page 2: CSCart4のHands-onセミナー 20140118

Menu

• テーマ・プリセット・レイアウト

• フォルダ構造を知ろう

• 市販のテーマの構造

• カスタマイズTips

Page 3: CSCart4のHands-onセミナー 20140118

テーマ・プリセット レイアウト

CS.Cart4 Hands-on

Page 4: CSCart4のHands-onセミナー 20140118
Page 5: CSCart4のHands-onセミナー 20140118

テーマ• Wordpressのように複数のテーマをインストールし、選択可能。

• インストールしたテーマは複製が可能。

Page 6: CSCart4のHands-onセミナー 20140118
Page 7: CSCart4のHands-onセミナー 20140118

プリセット• テーマごとにカラースキームなどを複数保存できる。

• プリセット対応のテーマはテーマエディターからライブで調整可能。

• ロゴなどはこのエディターを利用して設定(アップロード)する。

Page 8: CSCart4のHands-onセミナー 20140118
Page 9: CSCart4のHands-onセミナー 20140118

レイアウト• グリッドシステムのルールに沿ってグリッドやブロックを簡単に配置できるブロックマネージャーの提供

• ロケーション毎にレイアウトを設定可能。

• 複数のレイアウト構成を切り替えて運用できる。

Page 10: CSCart4のHands-onセミナー 20140118

CS.Cartのレイアウトの基本• コンテンツを16または12分割したグリッドシステムに添って配置を行う。

• ロケーション(トップページ、商品一覧、商品詳細)ごとにレイアウト構成を変更可能

• 横幅960px以外にも指定できる※ →レイアウト編集  960 or XXXX→YYYYY or Liquid

10

Page 11: CSCart4のHands-onセミナー 20140118

ブロックマネージャーに慣れる

Page 12: CSCart4のHands-onセミナー 20140118

ブロックマネージャーの基本• 新)グリッドの幅を指定可能。

• 新)特定の商品・ページ毎にロケーションを  作成できる

• グリッドの上部にグリッドは後から追加不可能。

• ひとつのグリッドの中にグリッドとブロックは混在できない。

• 「デフォルト」のみヘッダー/フッターを変更可能

Page 13: CSCart4のHands-onセミナー 20140118

ブロックをいろいろ置いてみる

Page 14: CSCart4のHands-onセミナー 20140118

ブロックのまとめ• ブロックは自作可能

• アドオンが提供するブロックなどがある

• 「メインコンテンツ」ブロックは必須! ※コントローラーのVIEWを表示するから

おまけ:ロケーション部分でタイトルタグを指定できる

Page 15: CSCart4のHands-onセミナー 20140118

フォルダ構造CS.Cart4 Hands-on

Page 16: CSCart4のHands-onセミナー 20140118

app コアファイルやアドオン本体

design 使用中のテンプレートファイル

images アップロードした画像等

js javascript(アドオン使用分含む)

var リポジトリ等

Page 17: CSCart4のHands-onセミナー 20140118

design

backend 管理パネル用テンプレート

themes フロント用テンプレート

Page 18: CSCart4のHands-onセミナー 20140118

themes

basic デフォルトのテンプレート

your-tpl 自作のテンプレート

your-tpl2

your-tpl3

Page 19: CSCart4のHands-onセミナー 20140118

basic

css CSS

mail メールテンプレート

media フォントや画像ファイル

presets プリセット関連ファイル

templates 各種テンプレート

Page 20: CSCart4のHands-onセミナー 20140118

templates

addons アドオンのテンプレート

blocks ブロックのテンプレート

buttons 各種ボタン用テンプレート

common commonテンプレート

pickers ピッカー用テンプレート

views コントローラーに対応した テンプレート

Page 21: CSCart4のHands-onセミナー 20140118

views

auth index.php?dispatch=auth.login_form

categories index.php?dispatch=categories.view&category_id=210

checkout index.php?dispatch=checkout.cart

orders index.php?dispatch=orders.search

products index.php?dispatch=products.view&product_id=160

主なもの

Page 22: CSCart4のHands-onセミナー 20140118

blocks

list_templates

static_templates

product_list_templates

wrappers

主なもの

Page 23: CSCart4のHands-onセミナー 20140118

フォルダ構造まとめ• 見るべきフォルダは多くない

• 構造がきちんとしている

• dispach=XXXX でみつける

Page 24: CSCart4のHands-onセミナー 20140118

市販テーマの構造CS.Cart4 Hands-on

Page 25: CSCart4のHands-onセミナー 20140118

basic

HiTech

Page 26: CSCart4のHands-onセミナー 20140118

HiTechテンプレートのファイル数画像24個 CSS1個 TPL2個

!

その他3個

Page 27: CSCart4のHands-onセミナー 20140118

なぜ少ないファイル数で見た目が変えられるのか?

A.差分のファイルだけ作れば その他はメインのリポジトリから ファイルがコピーされるから。

Page 28: CSCart4のHands-onセミナー 20140118

My changes アドオンを使う

My changesアドオン フック(Hook)を利用した簡単な

カスタマイズを実装するためのアドオン

テンプレート・フックを使えば コアファイルを改変せずに

好きな処理を割り込ませたり、上書きできる。

Page 29: CSCart4のHands-onセミナー 20140118

テンプレート・フックとは?• あらかじめ用意されたフック・ポイントをみつける • フック方法は3種類 • 命名規則に沿ったファイルを用意する • テンプレートキャッシュをクリアする

Page 30: CSCart4のHands-onセミナー 20140118

フック・ポイントとは?

{hook name="index:meta"} {if $display_base_href} <base href="{$config.current_location}/" /> {/if} <meta http-equiv="X-UA-Compatible" content="chrome=1"> <meta http-equiv="Content-Type" content="text/html; charset={$smarty.const.CHARSET}" />

{hook name="index:meta_description"} <meta name="description" content="{$meta_description|html_entity_decode:$smarty.const.ENT_COMPAT:"UTF-8"|default:$location_data.meta_description}" />

{/hook} <meta name="keywords" content="{$meta_keywords|default:$location_data.meta_keywords}" /> <meta name="mode" content="{$store_trigger}" />

{/hook}

/public_html/design/themes/basic/templates/meta.tpl

Page 31: CSCart4のHands-onセミナー 20140118

3種類のフック

• pre 先に。。 • post    後に。。。 • override  上書き!

Page 32: CSCart4のHands-onセミナー 20140118

命名規則とは?{hook name="index:meta"} (・・・・省略・・・・) {/hook}

/public_html/design/themes/ basic/templates/addons/my_changes/hooks/

index/meta.post.tplディレクトリ 種類(先述)

緑のフックポイントの後に処理を入れるファイルとなる。• • • • • • • • • • • • • • • • • • • • • • • • •

Page 33: CSCart4のHands-onセミナー 20140118

テンプレートキャッシュのクリア

処理高速化のためにテンプレートファイルは キャッシュされます。

!テンプレートファイルをそのまま

アップロードしただけでは、変更箇所が反映されない ことがあります。

!

管理画面のURLに?ctplをつけてアクセス しましょう。

Page 34: CSCart4のHands-onセミナー 20140118

カスタマイズTipsCS.Cart4 Hands-on

Page 35: CSCart4のHands-onセミナー 20140118

static templatesが便利

一番簡単に作ることの出来る 独自のブロック

/public_html/design/themes/ basic/templates/blocks/static_templates

1行目に以下のようなコメントを入れる

{** block-description:tmpl_copyright **}

Page 36: CSCart4のHands-onセミナー 20140118

static templatesが便利この中のリストに 表示される!