# if関数について、一定の金額以上の場合に表示させたい

**URL:** <https://community.shopify.com/t/if/359877>\
**Category:** サンプルコード集（アプリ・テーマ）\
**Created:** [September 20, 2024, 11:27am UTC](https://community.shopify.com/t/if/359877 "2024-09-20T11:27:08Z")\
**Posts on this page:** 3\
**Page:** 1

## AI-generated summary

**課題:** OrderPrinterで代引き決済手数料を納品書に表示したい。条件は税込30,000円未満で400円、30,000円以上60,000円未満で500円。

**問題点:**
- `cart.total_price`変数が正しく動作せず、金額判定が機能しない
- 30,000円未満の購入でも400円が表示される
- 合計金額の表示が太字になってしまう

**解決策:**
- `cart.total_price`の代わりに`total_price`変数を使用
- `total_price`は100倍された値なので、`divided_by: 100`で除算して比較
- 手数料表示は`{{ total_price | plus: 40000 | money }}`のように100倍の値（40000、50000）で加算
- if文の条件も100倍の値（30000、60000）で比較

**結果:** 質問者は提案されたコード修正により問題を解決。

<div class="post-metadata">

**Author:** ![A\_a11](https://avatars.discourse-cdn.com/v4/letter/a/90db22/32.png) [@A\_a11](https://community.shopify.com/u/A_a11)\
**Post date:** [September 20, 2024, 11:27am UTC](https://community.shopify.com/t/if/359877/1 "2024-09-20T11:27:08Z")

</div>

初歩的ですみません。

orderprinterを使用しているんですが、納品書に代引き決済の場合の手数料を追記したいです。

※「代引き手数料の場合」のコード部分は他の決済の場合の明細書と分けるので不要です

代引き決済手数料として、税込で0~30,000円未満なら400円、30,000円以上〜60,000円未満なら500円かかります。

※60,000以上は代引き対応していませんが、それは別途対応しているので不要です

orderprinterで作成する明細表で、金額の部分に以下のように設定しています。

ーーーーーーーーーーーーー

### お支払い内訳
{% for discount in discounts %} {% endfor %}

{% if shipping\_address %}

{% endif %}

**{% assign total\_price\_with\_tax = cart.total\_price | divided\_by: 100 %}**

  
  
  

  
  

| 小計 (税込): | {{ subtotal\_price | money }} |
| 割引コード "{{ discount.code }}" | {{ discount.savings | money }} |
| (内消費税): | {{ tax\_price | money }} |
| 送料 (税込): | {{ shipping\_price | money }} |
| 代引き決済手数料: |   
**{% if total\_price\_with\_tax \< 30000 %}**  
**¥400**  
**{% elsif total\_price\_with\_tax \>= 30000 and total\_price\_with\_tax \< 60000 %}**  
**¥500**  
**{% endif %}**  
 |
| **総合計 (税込):** |   
  
 **{% if total\_price\_with\_tax \< 30000 %}  
 {{ total\_price | plus: 400 | money }}  
 {% elsif total\_price\_with\_tax \>= 30000 and total\_price\_with\_tax \< 60000 %}  
 {{ total\_price | plus: 500 | money }}  
 {% endif %}**  
 

 |

 

**ーーーーーーーーーーーーー**

 

**主に変更を加えている部分(問題になっている部分)が太字になります。**

 

**こちらで設定すると、**

 

**0~30,000円に関しては正しく400円と表記されますが、30,000円以上の買い物に対しても400円と表示されてしまいます。**

 

**また、合計金額で商品代+送料+代引き手数料をたした額を表示させたいんですが、商品代+送料+4円の合計額になってしまいます。**

 

**何か対処法はありますでしょうか。**

 

**よろしくお願いいたします。**

---

<div class="post-metadata">

**Author:** ![Qcoltd](https://yyz1.discourse-cdn.com/shopifyforum/user_avatar/community.shopify.com/qcoltd/32/900_2.png) [@Qcoltd](https://community.shopify.com/u/Qcoltd)\
**Post date:** [September 20, 2024, 2:18pm UTC](https://community.shopify.com/t/if/359877/2 "2024-09-20T14:18:11Z")

</div>

@A_a11 様

```markup
{% assign total_price_with_tax = cart.total_price | divided_by: 100 %} 

```

こちらですが、

cart.total\_priceは、値を返しているでしょうか？

{{ cart.total\_price }} で、合計金額が出力されているかご確認ください。

もし、されていないようでしたら、下記のようにされると良いかと思います。

```markup
{% assign total_price_with_tax = total_price | divided_by: 100 %} 

```

上記で100で除算していることからも分かる通り、

total\_priceは100倍された金額が入っていますので、

```markup
{% if total_price_with_tax < 30000 %}
{{ total_price | plus: 400 | money }}
{% elsif total_price_with_tax >= 30000 and total_price_with_tax < 60000 %}
{{ total_price | plus: 500 | money }}

```

は、

```markup
{% if total_price_with_tax < 30000 %}
{{ total_price | plus: 40000 | money }}
{% elsif total_price_with_tax >= 30000 and total_price_with_tax < 60000 %}
{{ total_price | plus: 50000 | money }}

```

とされると良いかと思います。

ご参考まで。

(キュー田辺)

---

<div class="post-metadata">

**Author:** ![A\_a11](https://avatars.discourse-cdn.com/v4/letter/a/90db22/32.png) [@A\_a11](https://community.shopify.com/u/A_a11)\
**Post date:** [September 24, 2024, 3:52am UTC](https://community.shopify.com/t/if/359877/3 "2024-09-24T03:52:41Z")

</div>

解決しました！大変助かりました、

ありがとうございました。
