CS-Cart.jp開発者ドキュメント
  • はじめに
  • Getting Started
    • CS-Cart開発者向け注意事項
    • CS-Cartの構成
    • デバッグ方法
  • コア
    • Hooks
    • コントローラー
      • Pre&Post コントローラー
    • データベース
      • データベースの構造と命名規則
      • データベース・プレイスホルダー
      • 他のデータベースへの接続
    • ショップフロント
      • ブロック
      • blockメインスキーマ—
      • Dynamic Objects
      • ajaxリクエストの使用方法
      • 特別なCSSセレクター
      • マイクロフォーマット Microformats
      • 通知システム
      • ツールチップ
    • 設定
    • コア関数
    • イベントの通知
    • 言語変数
    • スキーマー
  • アドオン開発
    • フック
      • PHPフック
      • テンプレートフック
    • アドオンチュートリアル
      • 「Hello World」チュートリアル
      • Advanced Add-on チュートリアル
      • 商品リスト、詳細ページのカスタムテンプレートを作成
      • 支払方法の開発
    • アドオンの管理プロセス
    • Add-on スキーマー
      • アドオンの互換性
      • 他のアドオンとの競合・依存設定
    • APIの拡張
    • スキーマーの拡張
    • アドオンのディレクトリ構造
    • アドオンの言語変数
    • .poファイルによる言語ファイルの作成
  • テーマ開発
    • テーマ開発の概要
    • テーマの複製
    • レイアウトの管理
    • トップパネルとヘッダー
    • テーマを使用したショップの設定の変更
    • CSS
    • テーマの言語変数
    • メディアファイル
    • 親テーマ
    • スタイルとビジュアルエディター
    • レイアウトエディター
    • テンプレート
  • デバッグ
    • デバッガー
    • ファイルエディター
GitBook提供
このページ内
  • テープレート内のテンプレート・フック
  • いつテンプレート・フックが使用されるか
  • テンプレート・フックの使用方法
  • コア・テンプレートのオーバーライド
  • オーバーライド方法:
  1. アドオン開発
  2. フック

テンプレートフック

テンプレートフックはhookタグで囲まれた以下のような部分です:

{hook name="section:hook_name"}
...
{/hook}

開発者は、この部分にアドオンを使ってコードや処理を補足したり、再定義することができます。

テープレート内のテンプレート・フック

以下の例はdesign/backend/templates/views/order_management/components/totals.tplファイルのテンプレートフックの例です。

{hook name="order_management:product_info"}
       {if $cp.product_code}
              <p>{$lang.sku}:&nbsp;{$cp.product_code}</p>
       {/if}
{/hook}

いつテンプレート・フックが使用されるか

テンプレート・フックは既存のテンプレートに追加のデータを表示するために使用されます。例えば、アドオンを使ってストアの管理パネルに表示したい特別なブロックを作成したい場合、このような独自のブロックはテンプレート・フックを使用して追加することが出来ます。

テンプレート・フックの使用方法

PHPコード・フックと違って、テンプレートフックは別ファイルで宣言する必要はありません。(int.php等)

.tplファイルを適切なディレクトリと適切なファイル名で配置するだけです。

命名規則は次のようになります。

  • 管理パネル: design/backend/templates/addons/[addon id]/hooks/[template name]/[hook name].[pre|post|override].tpl

  • ショップフロント: design/themes/[theme name]/templates/addons/[addon id]/hooks/[template name]/[hook name].[pre|post|override].tpl

<画像>

コア・テンプレートのオーバーライド

アドオンで標準のテンプレートを完全に上書きすることが可能です。

オーバーライド方法:

  • 管理パネルではdesign/backend/templates/addons/[addon id]

  • ショップフロントの場合はdesign/themes/[theme name]/templates/addons/[addon id]内に、overridesディレクトリを作成します。

  • overridesディレクトリには、コアのテンプレート ディレクトリと同じ構造を作成します。

例えば、 design/backend/templates/addons/[addon id]/overrides/views/index/index.tplファイルは、次のテンプレートを完全にオーバーライドします:   design/backend/templates/views/index/index.tpl

前へPHPフック次へアドオンチュートリアル

最終更新 7 か月前