今回も引き続き株式会社ロックオン社製のプラグインの確認です。
2系には存在していた機能からと云う表記されている株式会社ロックオンのプラグインは今のところこれで最後になります。
「関連商品プラグイン」
2系の標準機能から 3系への移行の際にプラグインに降格された機能の1つです。
この機能はそれなりの頻度でクライアントからの要望があります。
例えば、メンテナンス用のパーツを表示したり、後継品へのリンクを行う形ですね。
インストール方法は前例の通りと云うことで省略です。
今回の対象は「関連商品プラグイン」です。
プラグイン一覧画面でも「関連商品プラグイン」というプラグイン名で表示されます。
有効にすることで初期設定は完了です。
と云うことで運用についてです。
「関連商品プラグイン」は導入しても管理画面のメニューは変更されません。
「管理画面 > 商品管理 > 商品マスター」
上記の管理画面にて商品の詳細画面にて作業を行う形です。
該当のプラグインを導入すると商品詳細エリアの下部に「関連商品」と云うエリアが追加されます。
初期状態では関連商品を6件設定できるようになっています。
株式会社ロックオン社様の他のプラグインもそうですが、件数の変更などは管理画面では出来るようになっていません。
初期設定は6件ですが変更したい場合には以下の設定ファイルを変更して下さい。
<インストールディレクトリ>/app/Plugin/RelatedProduct/Resource/config/constant.yml
related_product_max_item_count: 6
上記の部分の数字を設定したい件数に変更することで対応可能です。
対象ファイルに指定されている内容の内、もう一つはテキストの入力文字数を指定できます。
まぁ、こちらは特に変更することは無いかなとは思います。
関連商品の登録自体は非常に簡単です。
「商品を選択」をクリックすると商品選択画面が表示されます。
商品を選択後、説明文を記載すれば完了です。
実際には商品選択の画面では、関連商品として「非公開」の商品や「在庫切れ」の商品も登録することは可能です。
関連商品が「非公開」の場合には表示を行う際の処理で項目に「非公開」に変更してくれます。
しかし「在庫切れ」の商品は「関連商品」に表示されてしまいます。
もしも「SHOPマスター」の「商品設定」にて以下の設定をしている場合は気にする必要があります。
・在庫切れ商品を非表示にする → 有効
上記の設定が有効になっている場合、関連商品としては表示されますがクリックすると在庫切れの為エラー表示となります。
このプラグインを使用する場合は在庫切れの表示をどうするかは検討する必要がありそうです。
最後に公開画面:商品詳細ページの表示状況確認です。
まず、関連商品の表示レイアウトを変更する場合は以下のファイルを変更する形ですね。
<インストールディレクトリ>/app/Plugin/RelatedProduct/Resource/template/front/related_product.twig
また、表示位置に関しては公開画面の商品詳細ページを対象しています。
<インストールディレクトリ>/app/template/default/Product/detail.twig
※ ファイルコピーしている前提です。
標準ではフリーエリアの上部に表示出力される処理が行われています。
表示場所を変更したい場合には対象の箇所に以下の一文を記述することで表示位置の変更も可能です。
<!--# related-product-plugin-tag #-->
まぁ、これでプラグインに関する説明は以上となります。
・・・あとはちょっとだけ補足です。
該当のプラグインに関しては登録時に CSS と Javascript をサイトにコピーして使用する形となります。
プラグインを導入後には以下のディレクトリが作成されているはずです。
<インストールディレクトリ>/html/plugin/relatedproduct/assets
上記のディレクトリ以下に CSS や Javascript が存在しているので CSS などの変更は上記ディレクトリを変更する形です。
この CSS や Javascript に関してですが、前述している通り以下のフォルダ配下にインストール時のみコピーされます。
<インストールディレクトリ>/html
その為 EC-CUBE本体のバージョンアップを行う事がある際には、一度削除する対象となってしまいます。
元のファイルをバックアップしておくか、もしくは以下のフォルダの内容をコピーしないと挙動がおかしくなります。
<インストールフォルダ>/app/Plugin/RelatedProduct/Resource/assets
余り無い状況だとは思いますが気を付けたほうがよさそうです。
まぁ、一度削除した後に改めてインストールするなどで対応したほうが早い気もします(笑)
と云うことで今回はここまでとさせて頂きます。