商品リスト、詳細ページのカスタムテンプレートを作成
この記事では、商品リストおよび商品詳細ページのカスタムテンプレートを作成する方法について説明します。
また、これらのカスタムテンプレートをMy Changes
アドオンの一部として保存します。
My Changes
アドオンのフォルダーにカスタムテンプレートを保存することには、以下2つの利点があります。
作成または変更したテンプレートファイルの追跡が簡単に行えます。
アップグレード後に変更を再適用する必要が無くなります。
HINT
designまたはvar/themes_repositoryフォルダーで作業できます。 先に進む前に、これらのフォルダー構造を理解してください。
商品リストのテンプレート
デフォルトでは、CS-Cartには、商品リスト用の3つのテンプレートタイプが用意されています。
グリッド(products_multicolumns.tpl)
オプションなしのリスト(products_without_options.tpl)
コンパクトリスト(short_list.tpl)
これらのテンプレートのいずれかをデフォルトとして設定するには、管理パネルを開き、基本設定→表示設定→「商品一覧ページのレイアウト設定」に進みます。
My Changes
アドオンを利用して商品リストのカスタムテンプレートを追加するには、カスタム商品リストのテンプレート設定を含むファイルと、テンプレート自体のファイルを作成します。
テンプレートのディレクトリ構造
設定を含むファイルには、追加するテンプレートとその設定が記述されています。
既存の商品リストテンプレートの1つをtemplates/blocks/list_templates
からtemplates/addons/my_changes/blocks/list_templates
にコピーしてから、テンプレートの名前を変更することをお勧めします。
HINT
既存のテンプレートのファイルをコピーすることで構文エラーのリスクを最小限に抑えることができます。
テンプレート設定ファイルの例
テンプレート設定の簡単な説明
すべて正しく設定出来ていれば、新しいテンプレートが管理パネルの[一般設定]→[表示設定]に表示されます。
HINT
カスタムテンプレートが表示されない場合は、[アドオン]→[アドオンの管理]に移動し、My Changes
アドオンが有効であることを確認します。var/themes_repository/templates/addons/my_changes
で作業している場合、My Changes
をアンインストールする必要があります。
My Changesはアドオンの管理から再度インストールしてください。
<画像>
上の画像でもわかるように、アドオンの翻訳を含むファイルに作成したカスタム商品リストの言語変数を追加する必要があります。言語変数の名前は、テンプレート設定ファイルで商品リストをどのように呼び出したかによって異なります。
この場合、次のコードをvar/langs/en/addons/my_changes.po
に追加する必要があります。
作成した商品リストのテンプレートを有効にすると、ストアフロントのカテゴリページに表示されます。ただし、テンプレートにはアイコンがありません。
<画像>
アイコンの名前は、テンプレートの名前から決定されます。
たとえば、テンプレート設定ファイルの名前がproducts-modern-list
の場合、アイコンの名前はty-icon-products-modern-list
になります。画像を用紙してCSSを書き換えてください。
商品詳細ページのテンプレート
デフォルトでは、CS-Cartには、商品詳細ページ用の2つのテンプレートタイプが用意されています。
デフォルトのテンプレート(default_template.tpl)
商品画像大(bigpicture_template.tpl)
これらのテンプレートのいずれかをデフォルトとして設定するには、管理パネルを開き、一般設定→表示設定→商品詳細ページのビュー
に進みます。
My Changes
アドオンを介して商品詳細ページのカスタムテンプレートを作成するには、templates/addons/my_changes/blocks/product_templates
ディレクトリに.tpl
ファイルを作成する必要があります。
テンプレートの構造
templates/blocks/product_templates
から既存のテンプレートのいずれかをコピーすることをお勧めします。コピーしたファイル名はmodern_template.tpl
とします。
<画像>
繰り返しになりますが、言語変数をアドオンの翻訳ファイルに追加する必要があります。言語変数の名前は、テンプレートファイルの名前と同じです。この例では、modern_template
です。
次のコードをvar/langs/en/addons/my_changes.po
に追加する必要があります。
最終更新