リッチテキスト

リッチテキストフィールド

WYSIWYGエディタで編集可能なリッチテキストフィールドです。ブログ記事の本文など、書式設定が必要なコンテンツに適しています。

基本例

{
	"name": "content",
	"type": "richtext",
	"label": "本文"
}

プロパティ

プロパティ必須説明
namestringYesフィールドの識別子
type"richtext"Yes"richtext"を指定
labelstringNoCMS上での表示名
notestringNo編集者向けの補足メモ
requiredbooleanNo必須フィールドかどうか
disabledFeaturesstring[]No無効化するエディタ機能
aiAiOperation[]NoAI文章変換の操作一覧 New

使用例

記事本文

{
	"name": "content",
	"type": "richtext",
	"label": "本文",
	"required": true
}

機能制限

{
	"name": "summary",
	"type": "richtext",
	"label": "要約",
	"disabledFeatures": ["heading", "image", "codeBlock"]
}

無効化可能な機能

disabledFeatures配列に指定することで、エディタの機能を無効化できます。

見出し

説明
headingすべての見出し
heading1見出し1(H1)
heading2見出し2(H2)
heading3見出し3(H3)
heading4見出し4(H4)
heading5見出し5(H5)

ブロック要素

説明
bulletList箇条書きリスト
orderedList番号付きリスト
taskListタスクリスト
blockquote引用
codeBlockコードブロック
horizontalRule水平線
image画像

インライン要素

説明
bold太字
italic斜体
underline下線
strike取り消し線
codeインラインコード
highlightハイライト
linkリンク

AI文章変換機能

{
	"name": "content",
	"type": "richtext",
	"label": "本文",
	"ai": [
		{ "label": "敬語に変換", "context": "営業先に渡すような丁寧な敬語に変換してください" },
		{ "label": "文章を校正", "context": "誤字脱字・文法ミスを修正し、読みやすく校正してください" },
		{ "label": "英語に翻訳", "context": "テキストを自然な英語に翻訳してください" }
	]
}

リッチテキストではツールバー、バブルメニュー、スラッシュコマンド(/ai)の3つの方法でAI操作にアクセスできます。詳しくはAI文章変換を参照してください。

設定例

シンプルなテキストエディタ

見出しや画像を使わせたくない場合:

{
	"name": "summary",
	"type": "richtext",
	"label": "要約",
	"disabledFeatures": ["heading", "taskList", "codeBlock", "image", "horizontalRule"]
}

基本的な書式のみ

太字、斜体、リンクのみ許可する場合:

{
	"name": "note",
	"type": "richtext",
	"label": "備考",
	"disabledFeatures": [
		"heading",
		"bulletList",
		"orderedList",
		"taskList",
		"blockquote",
		"codeBlock",
		"horizontalRule",
		"image",
		"underline",
		"strike",
		"code",
		"highlight"
	]
}

コードブロック禁止

技術的でないコンテンツの場合:

{
	"name": "content",
	"type": "richtext",
	"label": "本文",
	"disabledFeatures": ["codeBlock", "code"]
}

pit.bodyとの関係

pit.bodyで指定されたrichtextフィールドは、マークダウンファイルの本文部分に格納されます。

{
	"fields": [
		{ "name": "title", "type": "text", "label": "タイトル" },
		{ "name": "content", "type": "richtext", "label": "本文" }
	],
	"pit": {
		"title": "title",
		"body": "content" // contentフィールドは本文として保存
	}
}

出力例(マークダウンファイル):

---
title: '記事タイトル'
---

本文の内容がここに入ります。

pit.bodyを指定しない場合、richtextフィールドはフロントマッターにHTML文字列として格納されます。

JSON形式での保存

extension: "json"のコレクションでは、richtextフィールドはHTML文字列として保存されます。

{
	"title": "製品名",
	"description": "<p>製品の<strong>詳細な</strong>説明文です。</p>"
}