# 配信停止

Liquidテンプレート内から、意図的かつ明示的に配信を中止します。テンプレートのロジックで、現在の受信者には通知を送信すべきではないと判断された場合に使用してください。

* タグ名: `abandon_delivery`
* 効果: テンプレートのレンダリングを直ちに中止し、配信を Abandoned としてマークします
* 再試行: なし（意図的に送信しない）
* インプレッション: カウントされません

使用するタイミング

* 必要なリソースが解決できなかった場合（例: リモート取得で利用可能なデータが得られなかった）。
* ビジネスルールによりこの受信者が対象外となる場合（例: 権利やオーディエンスのチェック）。

構文

* 制御タグの形式:
  * {% abandon\_delivery %}

注意

* このタグは実行されて初めて有効になります。中止すべき分岐内に配置してください。
* 何も出力せず、レンダリングは直ちに停止します。

パターン

コンテンツが見つからない場合に中止

```
{% remote_fetch 'https://cms.example.com/resolve?path={{landing_url}}' alias:doc %}
{% if doc %}
  今すぐ読む
{% else %}
  {% abandon_delivery %}
{% endif %}
```

権利チェックで中止

```
{% remote_fetch 'https://paywall.example.com/entitlements?user_id={{profile.user_id}}&doc_id={{landing_url}}' alias:ent %}
{% if ent and ent.allowed %}
  今すぐ読む
{% else %}
  {% abandon_delivery %}
{% endif %}
```

オーディエンスルールで中止

```
{% if profile.country_code != 'US' %}
  {% abandon_delivery %}
{% endif %}
```

動作と可観測性

* タグが実行されると、レンダリングは直ちに停止します。
* 配信は Abandoned（意図的）として記録されます。

作成ガイドライン

* このタグは、判断ロジックの else（または unless）分岐内に配置し、適切な場合にのみ発火するようにしてください。
* 意図がレビューや分析で明確になるよう、判断ロジックはシンプルかつ明示的に保ってください。

FAQ

* if/else の外に置くことはできますか?
  * はい。ただし、その場合は常に中止されます。条件付きで使うのが最適です。
* 何か出力されますか?
  * いいえ。レンダリングは直ちに停止します。

トラブルシューティング

* 「中止されなかった」: タグを含む分岐が実際に実行されたことを確認してください（条件とエイリアスを確認してください）。
