# gt-next: General Translation Next.js SDK: getTranslations URL: https://generaltranslation.com/ja/docs/next/api/dictionary/get-translations.mdx --- title: getTranslations description: getTranslations サーバーサイド翻訳関数の API リファレンス --- ## 概要 `getTranslations` は、サーバーサイドコンポーネントで [翻訳辞書](/docs/next/guides/dictionaries) から文字列の翻訳を取得するために使用します。 ```jsx const d = await getTranslations(); // 翻訳関数を取得する d('greeting.hello'); // IDを渡して翻訳を取得する ``` `getTranslations` は次をサポートします: * `string` および JSX コンテンツの翻訳 * 翻訳内での変数の挿入と条件分岐 * オプションの id プレフィックス クライアントサイドでの翻訳については、[`useTranslations`](/docs/next/api/dictionary/use-translations) を参照してください。 `getTranslations` と `useTranslations` は、翻訳対象のすべてのコンテンツを格納するために [辞書](/docs/next/guides/dictionaries) を使用します。 これは、[`` コンポーネント](/docs/next/guides/t) を使った翻訳とは異なります。 翻訳に `` コンポーネントのみを使用したい場合、このドキュメントは該当しません。 ## リファレンス ### Props ### 説明 | Prop | 説明 | | ---- | ------------------------------------------------ | | `id` | すべての翻訳キーの先頭に付ける、省略可能なプレフィックスです。ネストされた辞書の値を扱う場合に便利です。 | ### 戻り値 id を受け取ると、対応するエントリの翻訳版を返す翻訳関数 `d` の Promise ```jsx Promise<(id: string, options?: DictionaryTranslationOptions) => string> ``` | 名前 | 型 | 説明 | | ---------- | ------------------------------------------------------------------------------------- | ------------------------ | | `id` | `string` | 翻訳対象のエントリの ID | | `options?` | [`DictionaryTranslationOptions`](/docs/next/api/types/dictionary-translation-options) | `d` の動作をカスタマイズする翻訳オプション。 | *** ## 例 ### 基本的な辞書の使い方 辞書内のすべてのエントリが翻訳されます。 ```jsx title="dictionary.jsx" copy const dictionary = { greeting: <>Hello, Alice!, // [!code highlight] }; export default dictionary; ``` これらのエントリにアクセスするには (サーバーサイドでは) 、`getTranslations` を呼び出します。 これにより、辞書内の翻訳キーを受け取る関数が返されます。 ```jsx title="TranslateGreeting.jsx" copy import { getTranslations } from 'gt-next/server'; export default async function TranslateGreeting() { const d = await getTranslations(); // [!code highlight] return (

{d('greeting')} // Hello, Alice // [!code highlight]

); } ``` ### 変数を使う [#variables] 値を渡すには、(1) 識別子を割り当て、(2) `d` 関数を呼び出す際にその識別子を参照する必要があります。 この例では、翻訳に変数を渡すために `{}` を使用します。 辞書では、識別子として `{userName}` を割り当てます。 ```jsx title="dictionary.jsx" copy // [!code word:userName] const dictionary = { greeting: "Hello, {userName}!", // [!code highlight] }; export default dictionary; ``` ```jsx title="TranslateGreeting.jsx" copy // [!code word:userName] import { getTranslations } from 'gt-next/server'; export default async function TranslateGreeting() { const d = await getTranslations(); // こんにちは、Alice! const greetingAlice = d('greeting', { userName: "Alice" }); // [!code highlight] return (

{greetingAlice}

); } ``` ### プレフィックスを使う プレフィックスを使うと、辞書の一部だけを取得できます。 ```jsx title="dictionary.jsx" copy const dictionary = { prefix1: { // [!code highlight] prefix2: { // [!code highlight] greeting: "Hello, Bob", } } }; export default dictionary; ``` `getTranslations` メソッドに `'prefix1.prefix2'` という値を追加したため、すべてのキーに `prefix1.prefix2` というプレフィックスが付きます: ```jsx title="UserDetails.jsx" copy import { getTranslations } from 'gt-next/server'; export default function UserDetails() { const d = await getTranslations('prefix1.prefix2'); // [!code highlight] return (

{d('greeting')}

// greeting => prefix1.prefix2.greeting // [!code highlight]
); } ``` *** ## 注記 * `getTranslations` 関数を使うと、サーバーサイドで辞書の翻訳にアクセスできます。 ## 次のステップ * クライアントサイド版の `getTranslations` については、[`useTranslations`](/docs/next/api/dictionary/use-translations)を参照してください。