FROM LOAD - jp_header

商品ページへの”重量”表示について

Kyoo
観光客
9 0 1

各商品ページへ商品管理で登録した配送”重量”を、表示させたいと考えております。

データの呼び出しだけは出来たのですが、[重さの単位]をどう表示していいか…

どなたがご教授下さい。

 

[重さの単位]は、キログラムで登録しております。

表示も合わせて、キログラムで表示したいです。

(現在呼び出した情報ですと、0.988キログラムのものが、988と出力されている状態になってしまいます。)

 

Liquidの内容は以下の通りになっております。

 {% if block.settings.show_weight %}
<li>
<span class="yv-product-meta__label">Weight:</span>
<div class="yv-product-meta__value" data-product-weight="">
{% if current_variant.weight != blank %}
{{ current_variant.weight }}
{% else %}
{% echo '--' %}
{% endif %}
</div>
</li>
{% endif %}

 

宜しくお願い致します。

4件の返信4

株式会社フルバランス
Shopify Partner
1475 522 652

質問拝見しました。

Shopifyでは、商品の重量はグラム単位で保存されています。そのため、キログラムで表示したい場合は、1000で割って表示する必要があります。

また、重さの単位を明示的に表示するためには、単位(kg)を追加する必要があります。

以下のコードは、商品の重量をキログラム単位で表示し、単位を付ける方法を示しています。current_variant.weightの値を1000で割り、小数点以下の桁数を適宜調整したい場合は、| divided_by: 1000 | round: 2のようにroundフィルターを使用して桁数を指定できます。

 

 

 

{% if block.settings.show_weight %}
  <li>
    <span class="yv-product-meta__label">Weight:</span>
    <div class="yv-product-meta__value" data-product-weight="">
      {% if current_variant.weight != blank %}
        {{ current_variant.weight | divided_by: 1000 }} kg
      {% else %}
        --
      {% endif %}
    </div>
  </li>
{% endif %}

 

このコードでは、divided_by: 1000を使用してグラム単位の重量をキログラム単位に変換しています。

そして、kgを追加して重さの単位を表示しています。{% else %}ブロック内の{% echo '--' %}は正しくないため、--に修正しています。Liquidではechoタグは存在しないため、単純に--を出力したい場合はそのまま記述します。

ご参考までにしていただければと思います!

 

お悩み解決できましたら、ベストアンサー、いいねいただけると励みになります。
何卒よろしくお願いします。

株式会社フルバランス

株式会社フルバランス(Shopify Experts)
Shopify専門のEC成長支援会社です。ストアの新規構築から運用や改善のサポートなどShopifyに関する幅広いサービスを行なっております。
ECの技術・実務・成長、お悩みのことがあれば、お気軽にご相談ください。
『すべてのブランドの特大成長エンジンを搭載する』 株式会社フルバランス
Kyoo
観光客
9 0 1

株式会社フルバランス 御中

 

折角ご辺頂いておりましたのに、

返信が遅くなり申し訳ございません。

そして、大変丁寧なご説明とご解答感謝致します。

こちらで、もう一度編集させて頂きまして、計算後の重量をkgで表示できました。

しかし、ご説明にもございました、

小数点以下の桁数を適宜調整したい場合は、| divided_by: 1000 | round: 2のようにroundフィルターを使用して桁数を指定できます。

というところに関してですが、以下のように追加致しましたが反映できませんでした。

間違いの点を今一度ご教授頂ければ幸いです。

お手数をお掛け致しますが、宜しくお願い致します。

 

{% if block.settings.show_weight %}
  <li>
    <span class="yv-product-meta__label">Weight:</span>
    <div class="yv-product-meta__value" data-product-weight="">
      {% if current_variant.weight != blank %}
        {{ current_variant.weight | divided_by: 1000 | round: 2 }} kg
      {% else %}
        --
      {% endif %}
    </div>
  </li>
{% endif %}
Kyoo
観光客
9 0 1

 

”小数点以下の桁数を適宜調整したい場合は、| divided_by: 1000 | round: 2のようにroundフィルターを使用して桁数を指定できます。”

というところに関してですが、以下のように追加致しましたが反映できませんでした。

 

この問題についてですが、自己解決致しましたことをお知らせ致します。

色々試みたところ、”round: 2”は付加せず、”divided_by: 1000”の1000に小数点を加えて桁数を足すことで表示されました。

 

株式会社フルバランス ご担当者様、ご教授ありがとうございました。

株式会社フルバランス
Shopify Partner
1475 522 652

こちらご返信できておらず申し訳ございません。

また解決した旨を教えていただきご丁寧にありがとうございます。

 

また何かありましたらご連絡ください。

株式会社フルバランス(Shopify Experts)
Shopify専門のEC成長支援会社です。ストアの新規構築から運用や改善のサポートなどShopifyに関する幅広いサービスを行なっております。
ECの技術・実務・成長、お悩みのことがあれば、お気軽にご相談ください。
『すべてのブランドの特大成長エンジンを搭載する』 株式会社フルバランス