カラーミーショップの価格関連の独自タグを解説します

カラーミーショップの価格周辺は独自タグが多く、ページごと・会員ログインの有無・オプション価格で、使うべき独自タグが変わってきます。

独自タグのマニュアルからはカラーミーショップ側のロジックがどうなっているのか正確なところがわからず、カスタマイズ時にどれを使えばいいのかとまどうことがあります。

価格周辺の独自タグについて整理して解説します。
慣れていない方ですと、すこし難しい内容です。

共通テンプレートの独自タグを調べる

共通テンプレートの価格周辺の独自タグを抜粋しました。
独自タグ一覧(PC、スマートフォン) | カラーミーショップ マニュアル

共通テンプレートの独自タグ($recommendなど)

price販売価格(ログインなし:販売価格の値を出力、ログインあり:会員価格の値を出力)
regular_price通常販売価格(割引前の販売価格)
members_price会員価格

オプション価格の独自タグ($recommend[num].option_price)

maxオプションの最大の販売価格(ログインなし:販売価格の値を出力、ログインあり:会員価格の値を出力)
minオプションの最小の販売価格(ログインなし:販売価格の値を出力、ログインあり:会員価格の値を出力)
max_regularオプションの最大の通常販売価格(割引前の販売価格)
min_regularオプションの最小の通常販売価格(割引前の販売価格)
max_membersオプションの最大の会員価格
min_membersオプションの最小の会員価格

実際の商品データ(オプション価格なし)と比較する

商品データ:販売価格1000、会員価格500、定価1500、
オプションありでオプションの販売価格・会員価格は未入力

会員ログインしない場合

price=regular_priceになります。

未入力だったオプション価格はセットされ、
option_price.max_members=members_price、
option_price.min_members=members_price、
他=regular_priceになります。


会員ログインした場合

price=members_priceになります。

未入力だったオプション価格はセットされます。
option_price.max=option_price.max_members、
option_price.min=option_price.min_membersになります。

商品データと独自タグの比較からわかること

  • 定価を参照する独自タグはない
  • 会員ログインしていないときは、price=regular_price(通常販売価格)
  • 会員ログインしているときは、price=members_price(会員価格)

実際の商品データ(オプション価格あり)と比較する

商品データ:販売価格1000、会員価格500、定価1500、
オプションありでオプションの販売価格800、900・会員価格は300、400

会員ログインしない場合

下例はMODEテンプレートのコードを使って表示したものですが、オプション価格を入力している場合、正しい価格が表示されていないことがよくあります。
商品の下に表示されている価格は1,000円(税込)=priceです。

実際、カートに入れて決済画面をみると、販売価格=その商品のオプション価格なので、オプション価格を入力している商品においてはpriceは意味のない数値になります。

ここでは、「800円(税込)~」や「800円(税込)~900円(税込)」のようなオプション最小価格、オプション最大価格を使って価格表示すべきです。

会員ログインした場合

会員ログインしない場合同様に、販売価格はオプション価格で表示すべきです。
ただし、割引率を正確に計算する独自タグが不足していますので、割引率は表示できません。

商品データと独自タグの比較からわかること

  • 定価を参照する独自タグはない
  • オプション価格を入力している場合は、priceは意味のない数値になる
  • price表示はオプション価格の際に混乱のもとになる
  • 会員ログインしていないときは、option_price.max=option_price.max_regular、option_price.min=option_price.min_regular
  • 会員ログインしているときは、option_price.max=option_price.max_members、option_price.min=option_price.min_members

商品詳細テンプレートの独自タグ

商品詳細テンプレートの価格周辺の独自タグを抜粋しました。
独自タグ一覧(PC、スマートフォン) | カラーミーショップ マニュアル

共通テンプレートと比較すると、priceの中身が変更になっていて、salesが追加されています。
オプションの独自タグは名称・中身ともに同じです。

商品詳細テンプレートの独自タグ($product)

price定価
sales販売価格(ログインなし:販売価格の値を出力、ログインあり:会員価格の値を出力)
regular_price通常販売価格(割引前の販売価格)
members_price会員価格

オプション価格の独自タグ($option_price)

maxオプションの最大の販売価格(ログインなし:販売価格の値を出力、ログインあり:会員価格の値を出力)
minオプションの最小の販売価格(ログインなし:販売価格の値を出力、ログインあり:会員価格の値を出力)
max_regularオプションの最大の通常販売価格(割引前の販売価格)
min_regularオプションの最小の通常販売価格(割引前の販売価格)
max_membersオプションの最大の会員価格
min_membersオプションの最小の会員価格

実際の商品データ(オプション価格なし)と比較する

商品データ:販売価格1000、会員価格500、定価1500、
オプションありでオプションの販売価格・会員価格は未入力

会員ログインしない場合

price=定価になります。
sales=regular_priceになります。

未入力だったオプション価格はセットされ、
option_price.max_members=members_price、
option_price.min_members=members_price、
他=regular_priceになります。

会員ログインした場合

price=定価になります。
sales=members_priceになります。

未入力だったオプション価格はセットされます。
option_price.max=option_price.max_members、
option_price.min=option_price.min_membersになります。

商品データと独自タグの比較からわかること

  • priceで定価を参照できます。共通テンプレートとの違いに注意
  • 会員ログインしていないときは、sales=regular_price
  • 会員ログインしているときは、sales=members_price

実際の商品データ(オプション価格あり)と比較する

商品データ:販売価格1000、会員価格500、定価1500、
オプションありでオプションの販売価格800、900・会員価格は300、400

会員ログインしない場合

下例はMODEテンプレートのコードを使って表示したものですが、オプション価格を入力している場合、わりと多くのテンプレートで正しい価格表示を行えていません。
商品の下に表示されている価格は1,000円(税込)=salesです。

実際、カートに入れて決済画面をみると、販売価格=その商品のオプション価格なので、オプション価格を入力している商品においてはsalesは意味のない数値になります。

ここでは、「800円(税込)~」や「800円(税込)~900円(税込)」のようなオプション最小価格、オプション最大価格を使って価格表示すべきです。

下段のオプション表には正しい販売価格が表示されます。

会員ログインした場合

会員ログインしない場合同様に、販売価格はオプション価格で表示すべきです。
下段のオプション表には正しい販売価格が表示されます。

商品データと独自タグの比較からわかること

  • 共通テンプレートと商品詳細テンプレートのpriceは別もの
  • オプション価格を入力している場合は、salesは意味のない数値になる
  • 会員ログインしていないときは、option_price.max=option_price.max_regular、option_price.min=option_price.min_regular
  • 会員ログインしているときは、option_price.max=option_price.max_member、option_price.min=option_price.min_member


オプション価格の独自タグについて知っておくべきこと(まとめ)

オプション価格を使わない場合は問題ありません。
オプション価格を入力した場合は、テンプレートの販売価格が誤った表示になります。理由は上でも書いた通り、priceやsalesを表示しているためです。
本来なら販売価格にオプション価格を表示すべきところです。

カラーミーショップ公式テンプレートのほとんどがそうなっています(MONOの商品詳細ページのみ販売価格が「800円(税込)~900円(税込)」というような表示になります)。

もうひとつ、別の問題もあります。
オプション表形式の場合はオプション価格が表で表示されていますが、プルダウン形式の場合はぱっと見正しい販売価格が表示されておらず、非常にわかりにくいです。
既存テンプレートは大体こういう作りなので、プルダウン形式を使う場合は注意が必要です。

独自タグの中身の調べ方(余談)

余談ですが、MONOテンプレートでは<{$option_tree]>という独自タグが使ってあり、オプション関連のデータが一式入っています。
マニュアルに載っていない独自タグはdebug_print_varで中身を見ます。

執筆者

えいじ@naeco.jp この記事を書いた人

メーカー系情報システム部門出身の個人事業主。
自作するのが好きですぐに試したくなる、凝り性なWebエンジニア。
カラーミーショップ、モールなどのECについて記事にしています。

ご相談・お問い合わせはこちら