# General Translation Integrations: サポート対象のコンテンツ
URL: https://generaltranslation.com/ja/docs/integrations/payload/reference/supported-content.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: プラグインによって翻訳される、そのまま保持される、またはスキップされる Payload CMS のフィールドを確認できます。gt-payload のサポート対象コンテンツに関するリファレンスです。

このプラグインは Payload のフラット化されたフィールドスキーマを走査し、ローカライズ対象のテキストのみを翻訳します。フィールド構造は保持されるため、翻訳結果を Payload Local API 経由で書き戻すことができます。

## 概要 [#overview]

| トピック                                | 説明                               |
| ----------------------------------- | -------------------------------- |
| [翻訳対象のフィールド](#translated-fields)    | ローカライズされたテキスト、テキストエリア、リッチテキストの値。 |
| [ネストされたコンテンツ](#nested-content)      | グループ、タブ、配列、ブロック、リッチテキストブロック。     |
| [そのまま保持されるフィールド](#preserved-fields) | コピーされる値、または変更されずに残る値。            |
| [フィールドのオプトアウト](#field-opt-out)      | テキストを翻訳対象から除外するためのフィールド単位の設定。    |
| [文字数制限](#character-limits)          | Payload および SEO における文字数の扱い。      |
| [保存時の動作](#save-behavior)            | 下書き保存、直接保存、公開時の動作。               |

## 翻訳対象のフィールド [#translated-fields]

このプラグインは、ローカライズ対象の以下のフィールドに含まれる空でない値を翻訳します。

* `text` フィールド (`hasMany` リストを含む) 
* `textarea` フィールド
* Lexical の `richText` フィールド

Payload のデフォルトロケールがソースとなります。それ以外のサポートされている設定済みロケールは、いずれも翻訳ターゲットに指定できます。

ソースから削除されたテキストは、次回の実行時に翻訳先のロケールからも削除されます。ターゲットとしてリクエストされていないロケールや、翻訳可能な原文がないロケールについては、翻訳ジョブは開始されません。

## ネストされたコンテンツ [#nested-content]

翻訳可能なフィールドは、次の場所に配置できます。

* グループおよび名前付きタブ
* 配列
* ブロック (ブロック参照を含む) 
* Lexical のブロックフィールドおよびインラインブロックフィールド

ローカライズされたコンテナは、ロケールごとに個別の行を保持します。共有の配列とブロックでは Payload ID を使って行を照合するため、翻訳されたテキストは対応するソース行に正しく戻されます。

## そのまま保持されるフィールド [#preserved-fields]

このプラグインは、以下を翻訳しません。

* `localized: true` が設定されていないフィールド (ローカライズされたコンテナ内にある場合を除く) 
* Payload のスラッグフィールド
* 読み取り専用、非表示、または仮想フィールド
* パス、URL、メールアドレスとして認識される `text` の値 (`textarea` とリッチテキストは記述内容のまま翻訳されます) 
* リレーション、アップロード、日付、数値、チェックボックス、JSON など、テキスト以外のフィールド型
* ID やブロックタイプ名などの Payload の行メタデータ

翻訳されない必須フィールドについては、対象ロケールに値がない場合にソース値が設定されるため、Payload はそのロケールを保存できます。そのまま保持されるフィールドに対象ロケールの既存値がある場合、Payload のローカライズ構造がサポートしている範囲で、その値は変更されません。

リッチテキストのノードでは、マーク、リンク、アップロード、ブロック、書式設定が保持されます。翻訳後のマークアップをソース構造と安全に対応付けられない場合、プラグインはその文字列をスキップし、`broken_markup` を報告します。

## フィールドのオプトアウト [#field-opt-out]

フィールドを翻訳対象から除外するには、そのフィールドで `custom.gt.translate` を `false` に設定します。

```ts title="src/collections/products.ts"
{
  name: 'sku',
  type: 'text',
  localized: true,
  custom: {
    gt: {
      translate: false,
    },
  },
}
```

このオプションを親のフィールドに設定すると、その配下にある翻訳可能な子孫要素も除外されます。

## 文字数制限 [#character-limits]

翻訳がフィールドの `maxLength` を超えた場合、プラグインはより短い翻訳をリクエストします。それでもハードリミットを超える場合は、プラグインが単語の区切りで切り詰め、ロケールに応じた省略記号を付加します。

Payload SEO プラグインによってレンダリングされるフィールドには、次の推奨文字数が適用されます。

| フィールド       | 推奨文字数  | 強制的な切り詰め                        |
| ----------- | ------ | ------------------------------- |
| メタタイトル      | 60 文字  | フィールドに `maxLength` も設定されている場合のみ |
| メタディスクリプション | 150 文字 | フィールドに `maxLength` も設定されている場合のみ |

SEO の推奨値を超えると、より短い翻訳がリクエストされますが、推奨値だけで切り詰めが行われることはありません。

## 保存時の動作 [#save-behavior]

プラグインは、ロケールのフォールバックを無効にした状態で、ソースロケールと対象ロケールの最新の下書きを読み取ります。書き込みは Local API を通じて行います。

* 下書きが有効な場合は、下書きとして保存します。
* 下書きが無効な場合は、直接保存します。
* 公開は一切行いません。

管理画面から実行された読み取りと書き込みには、サインイン中のユーザーの Payload アクセスルールが適用されます。プログラムから呼び出す場合は、Payload ユーザーを渡すことで同じルールを適用できます。ユーザーを渡さない場合、Payload Local API は通常のサーバーサイドのアクセス動作に従います。

## Sitemap

See the full [sitemap](https://generaltranslation.com/sitemap.md) for all pages.
