# 再利用可能なコンテンツ

再利用可能コンテンツを使うと、複数のページやスペースにまたがってコンテンツを同期できるため、ブロックのすべてのインスタンスを同時に編集できます。

<figure><img src="https://4217681718-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FNkEGS7hzeqa35sMXQZ4X%2Fuploads%2F21nR8UJaA970B2iHPCWL%2Fcreating-content-reusable-content%402x.png?alt=media&#x26;token=ec03b404-3254-485c-bbee-9d4864cf3aac" alt="A GitBook screenshot showing reusable content"><figcaption><p>スペース内で再利用可能コンテンツを作成します。</p></figcaption></figure>

## 基本事項

再利用可能コンテンツは他のコンテンツとまったく同じように機能します。変更リクエストから編集したり、レビュー ワークフローに含めたりでき、公開済みサイト上ではどこでも正しく表示されます。

再利用可能コンテンツは複数のスペースから参照できますが、属するのは1つの *親スペース*.

### 「親スペース」の概念

親スペースとは、再利用可能コンテンツを所有するスペースのことです。コンテンツを編集できるのはそこだけです。

再利用可能コンテンツの更新はすべてのインスタンスに即座に反映されますが、すべての変更は親スペースから行う必要があります。直接編集するか、変更リクエスト経由で行います。

スペースは GitBook の中核となる概念で、編集ワークフローとセキュリティの両方を支えています。GitBook では権限ベースの編集が適用されるため、再利用可能コンテンツは親スペースからのみ変更できます。これにより、組織全体でコンテンツが再利用されている場合でも、編集権限が確実に尊重されます。

### 既知の制限事項

#### 連携

統合機能によって提供されるブロックは、再利用可能コンテンツではサポートされていません。GitBook の統合機能はスペースごとにインストールされ、アクセスを制限することでサードパーティ統合機能に付与した権限のみが使われるようにしているためです。スペースをまたいで再利用可能コンテンツを参照すると、このセキュリティ境界が崩れてしまいます。

#### 検索

現時点では、再利用可能コンテンツは親スペース内の検索結果にのみ表示されます。この制限をなくし、参照されているすべての場所で再利用可能コンテンツが検索結果に表示されるよう、現在対応を進めています。

## アプリ内

### **再利用可能コンテンツを作成**

再利用可能コンテンツを作成するには、 [1つ以上のブロックを選択し](https://gitbook-open-v2-preview.gitbook.workers.dev/url/gitbook.com/docs/documentation/ja-gitbook-documentation/blocks#selecting-blocks-and-interacting-with-selected-blocks)、次に **アクションメニュー** <picture><source srcset="broken-reference" media="(prefers-color-scheme: dark)"><img src="https://4217681718-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FNkEGS7hzeqa35sMXQZ4X%2Fuploads%2F89MTSo5XRpPMVr1T0rxS%2Factions.svg?alt=media&#x26;token=2b5d001e-560a-4f29-8d22-de8163725ca1" alt="The Actions menu icon in GitBook"></picture> 、選択し **変換先**、そして次を選択してください **再利用可能なコンテンツ**を開きます。ブロックに名前を付けておくと、後で見つけて再利用しやすくなります。

別の方法として、1つ以上のブロックを選択してから **Cmd + C** を押すと、再利用可能コンテンツを作成するかどうかを尋ねるプロンプトが開きます。

### **再利用可能コンテンツを挿入**

他のブロックと同じように再利用可能コンテンツを挿入できます。空白行で `/` を押すと **挿入パレット** が開き、名前でコンテンツを検索するか、単に「reusable」で検索できます。別の方法として、任意のブロックまたは空白行の左側にある `+` をクリックします。

また、ページのサイドバーにある再利用可能コンテンツ パネルでも、現在のスペースで以前に作成したコンテンツ ブロックの一覧を確認できます。

### **再利用可能コンテンツを編集**

再利用可能コンテンツは他のコンテンツと同じです。 [ライブ編集](https://gitbook-open-v2-preview.gitbook.workers.dev/url/gitbook.com/docs/documentation/ja-gitbook-documentation/collaboration/live-edits) が有効であれば任意のインスタンスを直接編集でき、そうでない場合は [変更リクエスト](https://gitbook-open-v2-preview.gitbook.workers.dev/url/gitbook.com/docs/documentation/ja-gitbook-documentation/collaboration/change-requests) を通じて編集できます。行った変更は、そのコンテンツが使われているすべての場所に同期されます。

変更リクエスト内で変更を行っている場合、その変更リクエストがマージされると、コンテンツは他のすべてのインスタンスに同期されます。

### **再利用可能コンテンツを切り離す**

を開くと、再利用可能コンテンツを切り離せます。 **アクションメニュー** <picture><source srcset="broken-reference" media="(prefers-color-scheme: dark)"><img src="https://4217681718-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FNkEGS7hzeqa35sMXQZ4X%2Fuploads%2F89MTSo5XRpPMVr1T0rxS%2Factions.svg?alt=media&#x26;token=2b5d001e-560a-4f29-8d22-de8163725ca1" alt="The Actions menu icon in GitBook"></picture> そして次を選択します **切り離し**。切り離すと、コンテンツは通常のブロックに戻ります。

切り離した後は、ブロックに加えた変更は他のインスタンスに反映されず、他のインスタンスで行った変更も切り離したブロックに反映されません。再利用可能コンテンツの他のすべてのインスタンスは、引き続き相互に同期されたままです。

### 再利用可能コンテンツを削除

必要に応じて、スペースから再利用可能コンテンツを完全に削除できます。ページの目次から再利用可能コンテンツを見つけ、削除したいコンテンツの横にある **アクションメニュー** <picture><source srcset="broken-reference" media="(prefers-color-scheme: dark)"><img src="https://4217681718-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FNkEGS7hzeqa35sMXQZ4X%2Fuploads%2F89MTSo5XRpPMVr1T0rxS%2Factions.svg?alt=media&#x26;token=2b5d001e-560a-4f29-8d22-de8163725ca1" alt="The Actions menu icon in GitBook"></picture> を開いて、 **削除**.

再利用可能コンテンツを削除すると **使用されているすべてのページから削除されます**。この操作は元に戻せません。

## GitHub & GitLab との同期

GitHub & GitLab への同期時にも、再利用可能コンテンツは完全にサポートされています。再利用可能コンテンツは専用の `includes` フォルダーにエクスポートされ、各コンテンツは個別の Markdown ファイルになります。

その後、他のページでは `includes` ディレクティブを使ってコンテンツを参照します。

{% hint style="info" %}
同期時には、 `.gitbook/includes` ディレクトリが各同期済みスペースのルートに作成されます（リポジトリ全体のルートとは限りません）。もし `.gitbook/includes` フォルダーまたはそのファイルがスペースの目次に表示される場合は、TOC から手動で非表示にする必要があるかもしれません。
{% endhint %}

#### 例

{% hint style="success" %}
GitHub 側で記述する場合は、include へのパスが参照を含むファイルを基準にした相対パスであることを確認してください（リポジトリのルート基準ではありません）。
{% endhint %}

```markdown
{% include "../../.gitbook/includes/reusable-block.md" %}
```
