公開済みの記事をAIに直させると、説明は増えても、元の注意事項や日付、リンク、コードが消えていることがあります。消えた情報は、改稿後の文章だけを読んでも気づけません。反対に、元の情報がすべて残っていても、足された文の中に、根拠のない一文や読者に不要な一文が混ざることがあります。
WordPressのバックアップ記事に「復元候補を選ぶ」節を1つ足す依頼を、禁止事項(具体的な画面操作、固定の保存間隔、成功の保証などを加えない)を書いて、AIに2回出しました。2回とも、元の注意文・表・画像参照・リンク・コードはすべて残り、保持の検査に合格しました。ところが追加された文には、2回とも、禁止事項をそのまま読者向けの断り書きにした文がありました(「…推奨値ではありません」「…目安となる時間差を定めません」など)。どの禁止事項が断り書きになったかは回ごとに違い、2回目は、依頼に添えた出典のメモまで記事の本文として出力されました。
この記事では、改稿の前に読者の問いと「変えずに残す情報」を決める改善ブリーフ、改稿後に照合する保持対象表とPythonの検査、追加された文を読み分ける手順を、この2回の実例で示します。読み終えたら、AIの改稿案を採用するか、直してから採るか、保留するかを決められます。
使う場面と、手元に残るもの
この手順は、すでに公開している記事の一部だけをAIに書き足させたいときに使います。手元に残るのは次の3つです。
| 成果物 | 中身 | 使うとき |
|---|---|---|
| 改善ブリーフ | 読者の問い、記事の役割、残す情報、足す情報、根拠がないときの扱い、扱わないこと | AIに依頼する前 |
| 保持対象表 | 残す情報ごとの照合方法と、照合だけでは分からないこと | 改稿案を受け取った直後 |
| 追加文の読み分け | 足された文を「採る/削る/出典に戻す」に分ける基準 | 保持の照合に合格したあと |
手順1:読者の問いを1文で決める
最初に、この記事に来た読者が片づけたいことを1文にします。検索語と今の本文から考えます。今回の例は「WordPressのバックアップ設定と保存先」という記事で、Search Consoleでは「WordPress バックアップ 復元」でも表示され、その語の掲載順位が下がっていました(直す記事を選ぶ手順の記事の練習データ)。保存の仕方の記事に、戻し方を探す人も来ていると読めます。
そこで問いを「保存済みのバックアップから、どれを復元候補にすればよいか」と決めました。問いが今の記事の役割(保存対象と保存先の確認)の続きなら、既存の記事に足します。プラグインの比較のように目的が違う問いなら、別の記事にします。特定のサービスの画面操作のように根拠をまだ確かめていない問いは、保留にします。
手順2:改善ブリーフに、残す情報と扱わないことを書く
問いが決まったら、改善ブリーフを書きます。今回のブリーフは次のとおりです。
| 項目 | 今回のブリーフ |
|---|---|
| 読者の問い | 保存分はあるが、どれを復元候補にすればよいか分からない |
| 記事の役割 | 保存対象・保存先を確認し、復元の検討へ進む |
| 残す情報 | 元の本文と注意事項、表の日時と対象、画像参照とalt、公式リンク先、コード全文 |
| 足す情報 | 対象サイト・保存日時・ファイルとデータベースの組合せを確かめ、分からなければ保留する説明 |
| 根拠がないとき | 未確認の項目と、次に見る公式資料を書く。ボタン名や成功の保証で埋めない |
| 扱わないこと | 復元方式ごとの手順、プラグインの比較、サービス別の画面操作、検索効果の予測 |
足す情報の根拠には、WordPress公式の説明を使いました。通常の復元にはデータベースとファイルの両方が必要で、同じ頃の保存分を一組として扱うこと、データベースを復元すると現在の内容が上書きされることです(バックアップの公式説明、データベースのバックアップ・復元、確認日:2026年10月11日)。
手順3:依頼文に、ブリーフと元の本文を添えて送る
ブリーフをもとに、次の依頼文を作りました。この後に、改稿前の本文(before.md)の全文と、確認済みの出典2件の要約を続けて送ります。
読者は、保存済みのWordPressバックアップから復元候補を選びたい人です。
既存記事の目的は、保存対象と保存先の確認です。
元の本文を書き換えず、「復元候補を選ぶ」節だけを後ろに追加してください。
元の注意文、表の日時と対象、画像のaltと参照、リンク先、コード全文を残します。
根拠は添付したWordPress公式資料です。
対象サイト・保存日時・ファイルとDBの組合せを確認する説明を加えます。
不明なら保留し、記録や利用サービスの公式資料を確認するよう書いてください。
具体的な画面操作、固定の保存間隔、成功保証、未測定のSEO効果は加えません。
記録例の日時を推奨値として扱わないでください。
出力は元の本文全体と追加節です。
この依頼文を、Claudeの新しいチャットに1回送りました(2026年10月20日)。その前に、この記事を作る作業の中で、同じ禁止事項を箇条書きにした指示書でAIに1回書き足させています(2026年10月11日)。以下の「1回目」「2回目」はこの2回です。
改稿前の本文は次のとおりです。照合を再現するときは、UTF-8の before.md として保存します。
# WordPressのバックアップ設定と保存先
WordPressのバックアップでは、データベースとファイルを両方保存します。保存先はサーバー内だけにせず、手元や別の保管先にもコピーを置きます。
## 保存する対象
記事や設定の多くはデータベースに、アップロード画像やテーマ等はファイルに入ります。片方だけでは同じ状態に戻せない場合があります。
| 記録例の保存日時 | 対象 | 確認するもの |
| --- | --- | --- |
| 2026-10-10 09:00 JST | データベース | SQLファイル |
| 2026-10-10 09:00 JST | ファイル | 画像・テーマ等 |

保存対象は[WordPress公式のバックアップ説明](https://developer.wordpress.org/advanced-administration/security/backup/)も確認してください。
~~~python
backup_set = ["database.sql", "files.zip"]
print(len(backup_set)) # 記録例の対象は2種類
~~~
## 実行前の確認
保存日時、対象サイト、ファイルの有無を記録します。復元すると現在の内容が上書きされる可能性があるため、作業直前の状態も別に保存してください。公開サイトでいきなり試さず、検証環境で確認します。
## 復元について
復元の手順は利用するホスティングやプラグインで異なります。この記事にはサービス別の操作手順はまだありません。
手順4:保持対象表とPythonで、元の情報が残ったかを照合する
改稿案を受け取ったら、まず元の情報が残っているかを照合します。保持対象ごとに、照合のしかたと、照合だけでは分からないことを表にしておきます。
| 保持対象 | 照合のしかた | それだけでは分からないこと |
|---|---|---|
| 3つの注意文 | 否定や条件を含め、文全体が一致するか | 足された文が注意文と矛盾していないか |
| 表と記録の日時 | 見出し・区切り・2行の文字列が一致するか | 日時が復元に適した保存分か |
| 画像 | altと参照の行が一致するか | 画像ファイルの欠落・差し替え |
| 出典リンク | リンク先のURLが完全に残っているか | 今の出典がその主張を支えているか |
| コード | コードブロック全体が一致するか | 新しい環境で動くか |
文字列の照合は、次の check.py で行えます。Python 3の標準ライブラリだけで動き、before.md と改稿後の after.md を同じフォルダに置いて python3 check.py before.md after.md で実行します。
"""Python 3標準ライブラリ。保護した箇所の完全一致を確認する小例。"""
from pathlib import Path
import re
import sys
def protected(text):
warnings = (
"保存日時、対象サイト、ファイルの有無を記録します。",
"復元すると現在の内容が上書きされる可能性があるため、作業直前の状態も別に保存してください。",
"公開サイトでいきなり試さず、検証環境で確認します。",
)
if not all(s in text for s in warnings):
raise ValueError("比較元の注意文が不足しています")
return {
"注意文": list(warnings),
"表": re.findall(r"^\|.*\|$", text, re.M),
"画像参照": re.findall(r"^!\[.*\]\(.*\)$", text, re.M),
"リンク先": re.findall(r"(?<!!)\[[^\]]+\]\(([^)]+)\)", text),
"コード": re.findall(r"~~~[^\n]*\n.*?\n~~~", text, re.S),
}
def check(before, after):
failed = []
actual = {
"注意文": after,
"表": after.splitlines(),
"画像参照": after.splitlines(),
"リンク先": re.findall(r"(?<!!)\[[^\]]+\]\(([^)]+)\)", after),
"コード": re.findall(r"~~~[^\n]*\n.*?\n~~~", after, re.S),
}
for kind, pieces in protected(before).items():
if not pieces:
raise ValueError(f"比較元に{kind}がありません")
if any(piece not in actual[kind] for piece in pieces):
failed.append(kind)
return failed
if __name__ == "__main__":
if len(sys.argv) != 3:
raise SystemExit("使い方: python3 check.py before.md after.md")
before = Path(sys.argv[1]).read_text(encoding="utf-8")
after = Path(sys.argv[2]).read_text(encoding="utf-8")
try:
failed = check(before, after)
except ValueError as error:
raise SystemExit(str(error))
print("FAIL: " + "、".join(failed) if failed else "PASS: 保持対象の文字列が一致")
raise SystemExit(1 if failed else 0)
2回の改稿案は、どちらも次の結果でした(終了コード0)。
PASS: 保持対象の文字列が一致
表の日時を1つ変えると FAIL: 表、注意文の「上書きされる可能性」を否定に変えると FAIL: 注意文 になります。一方で、注意文を残したまま「検証環境なら現在の内容は上書きされません。」のような根拠のない一文を足しても、この検査は合格します。この検査が確かめるのは「残すと決めた情報が残っているか」だけで、足された文が正しいかは、次の手順で読みます。
コードを使わない場合は、WordPressのリビジョン画面で改稿前後を見比べられます。投稿の設定サイドバーで「リビジョン」の横の数字を押すと一覧が開き、WordPress 7.0以降では、追加したブロックが緑、削除したブロックが赤、変更したブロックが黄色で示されます(WordPress公式:リビジョン、確認日:2026年10月12日)。公開済みの記事は「更新」を押した時点で反映されるので、改稿は検証環境で保存してから見比べます。
手順5:足された文を、採る・削る・出典に戻すに分ける
保持の照合に合格したら、足された文を1文ずつ読みます。Googleも、生成AIで作った内容に正確さ・品質・関連性を求めています(Googleの生成AIコンテンツの指針、確認日:2026年10月11日)。2回の改稿案で、読み分けが必要だった文は次のとおりです(AIの出力の原文の一部)。
| 足された文 | 何が起きたか | 分け方 |
|---|---|---|
| 1回目「…選ぶべき日時や保存間隔の推奨値ではありません。」(文の後半) | 禁止事項(日時を推奨値として扱わない)を、読者向けの断り書きにした | 削る:表の見出しが「記録例の保存日時」なので要らない |
| 1回目「候補がそろっても復元の成功が保証されるわけではありません。」 | 禁止事項(成功を保証しない)を断り書きにした | 削る:次の段落の「検証環境で確かめる」で足りる |
| 1回目「このページでは、未確認の管理画面の操作や復元の実行順序は指定しません。」 | 禁止事項(画面操作を加えない)を断り書きにした | 削る:読者の判断に使えない |
| 2回目「そのため、この記事では目安となる時間差を定めません。」 | 禁止事項(固定の保存間隔を加えない)を断り書きにした | 削る |
| 2回目「前掲の表にある2026-10-10 09:00 JSTは、あくまで記録例として置いた日時です。」「選ぶときの基準や推奨値ではありません。」 | 禁止事項(日時を推奨値として扱わない)を断り書きにした | 削る |
| 2回目「バックアップのファイル名や保存先の表示が、いま復元しようとしているサイトのものかを確認します。」など | 添えた出典にない具体的な確かめ方が足された | 出典に戻す:使うサービスの公式資料で確かめてから残す |
| 2回目「## 確認済みの出典(2026-10-11確認)」の見出しと2行 | 依頼に添えた出典のメモが、元の本文と追加節のあいだに本文として出力された | 削る:依頼の外の混入。保持の検査では見つからない |
禁止事項が断り書きの文になった箇所は、1回目に3文、2回目に3文(2か所)ありました。2回に共通していたのは「記録例の日時を推奨値として扱わない」だけで、ほかは回ごとに違う禁止事項が文になっています。依頼に「〜は加えない」と書くと、AIはそれを守ったうえで、守ったことを読者に向けて書くことがある、と考えておくと読み落としにくくなります。
分け方の基準は次の3つです。
-
採る:読者が手順や判断に使え、添えた出典で説明できる文。
-
削る:依頼の禁止事項を読者に向けて言い直しただけの文、依頼の外から入った文。
-
出典に戻す:出典に書かれていない具体例や確かめ方。根拠を確かめてから残す。
1回目の追加節から、削る3文を除くと次のようになります。1回目の出力を読み分けの結果に合わせて直した例です。
## 復元候補を選ぶ
まず、不具合が起きる前の保存分を候補にします。その保存分が対象サイトのもので、ファイルとデータベースが同じ頃の一組になっているかを確認してください。
対象サイトや保存日時が分からない場合、または片方が欠けている場合は、復元を始めず、保存記録や利用サービスの公式資料を確認します。
復元すると、保存後に追加・変更した内容が戻らなくなる可能性があります。作業直前の状態を別に保存し、検証環境で必要な記事や画像を確認したうえで、利用するホスティングやプラグインの公式手順に進んでください。
採用するか、保留するかを決める
照合と読み分けの結果から、次のように決めます。
-
採用する:保持の照合に合格し、足された文がすべて「採る」だった。
-
直してから採用する:保持の照合に合格し、「削る」文を除けば残りがすべて「採る」になる。今回の1回目はこれに当たり、上の直した例が採用案です。
-
保留する:保持の照合に不合格だった、または「出典に戻す」文の根拠がまだ確かめられない。今回の2回目は、出典にない確かめ方が複数あるので、この基準では保留になります。
採用したら、変更した日と範囲を記録しておきます。検索での評価は、同じ条件の期間のデータで別に見ます。
保持対象表は、AIに頼むときだけでなく、人が書き直すときにも使えます。この記事自体を書き直したときも、次の表で前後を照らしました。意図して外したものには理由の欄を付けておくと、後で「なぜ消えたか」を追えます。
| 保持対象 | 書き直し後 | 外した理由 |
|---|---|---|
check.py と before.md の全文 |
残した(文字列が一致) | — |
| WordPress公式3件へのリンクと確認日 | 残した | — |
| Googleの生成AIコンテンツの指針へのリンク | 残した | — |
| Googleの有用なコンテンツ・画像の説明へのリンク | 外した | 書き直し後の手順で使う箇所がなくなった |
| 検査の10ケースの結果表 | 外した(実験の記録に残した) | 読者の判断には、合格・不合格の例2つで足りる |

コメントを残す