WordPressサイトのあらゆる変更を追跡する方法(壊れる前に)
John Turner
ジョン・ターナー
サイトで何かが変更されました。設定が異なったり、ページが編集されたり、プラグインがアクティブリストから消えたりしました。チームの誰も責任を負っていません。
WordPressは2種類の変更履歴を別々に保存しており、ほとんどのサイト所有者はそのうちの1つしか知りません。
この記事では、コンテンツの組み込みリビジョンシステムと、その他のすべてのためのアクティビティログの両方について説明します。
主なポイントは次のとおりです:
- WordPressには2つの変更履歴システムがあります:リビジョンとアクティビティログ。リビジョンはコンテンツの編集を追跡します。アクティビティログはそれ以外すべてを追跡します。
- 組み込みのリビジョンは、保存または公開するたびに、投稿やページのスナップショットを保存します。ブロックエディター内から以前のバージョンを参照して復元できます。
- リビジョンは、ログイン、プラグインの変更、設定の編集、またはユーザーアカウントのアクティビティを記録しません。それにはアクティビティログプラグインが必要です。
- Duplicatorによるアクティビティログは、サイト全体で60以上のイベントを追跡し、アクティブ化するとすぐにログの記録を開始し、ログをCSVとJSONの両方の形式でエクスポートできる唯一のアクティビティログプラグインです。
- アクティビティログとDuplicatorを一緒に使用すると、サイトのすべての変更の完全な記録が得られ、悪い更新をロールバックできるようになります。
目次
WordPressにおける変更履歴とは?
WordPressは2種類の変更履歴を保存できます:コンテンツのリビジョンとサイトのアクティビティログ。リビジョンは、保存または公開するたびに投稿やページのスナップショットを保存します。アクティビティログは、ログイン、プラグインの変更、設定の編集など、それ以外すべてを記録します。
これら2つのシステムは、非常に異なるものを追跡します。
先週の火曜日にブログ記事を編集した場合、リビジョンはその変更内容を正確に示します。しかし、誰かがプラグインをインストールしたり、新しい管理者アカウントを作成したり、サイトのURLを変更したりした場合、リビジョンはそれらのいずれも示しません。そのような履歴には、アクティビティログプラグインが必要です。
ほとんどのサイト所有者はリビジョンのみに頼っており、どれだけ多くのことが記録されずにいるかに気づいていません。
WordPressのリビジョンを使用してコンテンツの変更履歴を確認する方法
WordPressには、投稿とページ用の組み込みリビジョンシステムがあります。仕組みと場所を説明します。
WordPressのリビジョンはどのように機能するか
下書き保存、更新、または公開をクリックするたびに、WordPressはそのコンテンツのコピーを保存します。このリビジョン履歴は時間とともに積み重なり、必要に応じていつでも参照できます。
WordPressはまた、編集中に何か問題が発生した場合に復旧できるよう、60秒ごとに作業を自動保存して一時的なバックアップを作成します。自動保存はリビジョンとは別であり、公開されたコンテンツを上書きすることはありません。編集中に何か問題が発生した場合に復旧するのに役立ちます。
リビジョンは、削除するか制限を設定するまでデータベースに保存されます。投稿、ページ、およびリビジョンが有効になっているカスタム投稿タイプで機能します。
投稿またはページの改訂履歴にアクセスする方法
- ブロックエディターで任意の投稿またはページを開く
- 右側のサイドバーの「投稿」または「ページ」タブの下にある「リビジョン」を探す
- 表示されない場合は、右上にある画面オプションをクリックして、リビジョンパネルを有効にしてください
- リビジョンをクリックして比較画面を開きます
- スライダーを使用して保存されたバージョン間を移動します。削除されたコンテンツは赤で、追加されたコンテンツは緑でハイライトされます
- 前へおよび次へボタンを使用して、一度に1つのリビジョンずつ移動します
- 任意の2つのリビジョンを比較するにチェックを入れて、隣接していないバージョン間をジャンプします
- このリビジョンを復元をクリックして、選択したバージョンに戻します
WordPressリビジョンの履歴制限
リビジョンは、投稿のタイトル、本文、抜粋の変更のみを追跡します。それだけです。

投稿者、アイキャッチ画像、パーマリンク、カスタムフィールドの変更は、新しいリビジョンをトリガーしません。また、リビジョン画面では、どのユーザーが特定の変更を行ったかを明確に表示せず、変更が行われたことだけを示します。
エディタ外のもの、設定ページ、プラグインのアクティビティ、ユーザーアカウントなどは、リビジョンには一切記録されません。
すべてのユーザーがすべてのリビジョンを表示できるわけではありません。アクセス権の内訳は次のとおりです。
- 管理者とエディターは、サイト全体のリビジョンすべてにアクセスできます
- 著者は、自分の投稿のリビジョンを表示できます
- 投稿者は、自分の下書きのリビジョンのみを表示できます
WordPressのリビジョン履歴では何を追跡しないのか?
組み込みのリビジョンはコンテンツの編集のみを対象とし、それ以外は対象外です。WordPressサイトで実際に発生することの大部分は、デフォルトでは記録されません。
WordPressのリビジョンで記録されないものは次のとおりです。
- ユーザーのログイン、ログアウト、およびログイン試行の失敗
- プラグインのインストール、更新、有効化、無効化
- テーマの切り替えとカスタマイザーの変更
- サイトURL、管理者メールアドレス、パーマリンク構造などのWordPressコア設定
- 新しいユーザーアカウントとロールの変更
- メディアファイルのアップロードと削除
- WooCommerceの製品編集、注文変更、ストア設定
これが実際には何を意味するか考えてみてください。チェックアウトプロセスと競合するプラグインをインストールした。新しい管理者アカウントが作成されたが、あなたはそれを承認していない。パーマリンク構造が変更され、サイトのURLの半分が壊れた。これらはすべてリビジョンには表示されません。
問題が発生し、原因が投稿やページ内にない場合、リビジョンからは何も得られません。そこでアクティビティログがそのギャップを埋めます。
アクティビティログでWordPressの変更履歴全体を確認する方法
アクティビティログは、コンテンツの編集だけでなく、WordPressダッシュボード全体で行われたすべての操作を記録します。設定する最良の方法は、アクティビティログプラグインをインストールすることです。
Activity Log by Duplicatorは、最も広く使用されているWordPressバックアッププラグインの1つの開発チームによって作成されました。これは、9つのカテゴリにわたる60以上のイベントを追跡します。
- ユーザー
- コンテンツ
- メディア
- プラグイン
- テーマ
- WordPress
- 外観
- 分類
- 設定

アクティベートした瞬間からログの記録が開始されます。各ログエントリには、イベントタイプ、それをトリガーしたユーザー、タイムスタンプ、IPアドレス、および重大度レベルが表示されます。

記録されたすべてのイベントには重大度レベルが割り当てられるため、何百もの通常のログエントリをスクロールすることなく、迅速にトリアージできます。
- 低:下書き保存や承認済みコメントなどの通常の活動
- 中:プラグインの更新やコンテンツの編集など、知っておく価値のある変更
- 高:新規ユーザーアカウント、ログイン失敗、ロール変更など、注意が必要なアクション
- 重大:サイト全体に影響する大規模なエラー
最初に「高」と「重大」でフィルタリングすると、注意が必要なものを最も速く見つけることができます。

このプラグインは、年間29ドルからスタンドアロンで利用できます。また、バックアップと移行のためのDuplicator、WP Media Cleanup、およびアクティビティログを組み合わせたバンドルであるDuplicator Eliteに無料で含まれています。
WordPressアクティビティログをカスタマイズする方法
プラグインが実行されたら、より多くの機能を利用するために設定しておくべきことがいくつかあります。
メール通知を設定する
重要なイベントを把握するために、ダッシュボードを手動で確認する必要はありません。Duplicatorのアクティビティログを使用すると、優先度の高いアクティビティに対してメールアラートを設定できます。
プラグイン設定に移動し、ログイン試行失敗、ロール変更、またはコア設定の編集などのイベントの通知を追加します。

アラートをトリガーする重大度レベルと、アラートを送信する場所を選択できます。代理店サイトの場合、重大なアラートを共有受信トレイに送信すると、見逃しがなくなります。
フィルターで必要なものを見つける
アクティブなサイトでは、ログダッシュボードはすぐにいっぱいになる可能性があります。フィルターを使用すると、ノイズをカットできます。
次でフィルタリングできます:
- 期間
- ユーザー
- イベントカテゴリ
- 重大度レベル
フィルターを組み合わせることで、特定のインシデントを調査する最も速い方法となります。いつ何が起こったか、どのユーザーがログインしていたかを大まかに把握していれば、数秒で数件のエントリにまでタイムラインを絞り込むことができます。

レポート用にログをエクスポートする
WordPressの外部でログデータを共有する必要がある場合は、エクスポート機能が対応します。
ログは、クライアントレポートやスプレッドシート用にCSV、プログラムでの使用用にJSONでエクスポートされます。エクスポートする前にフィルターを適用すると、完全なログ履歴ではなく、ターゲットを絞ったデータセットを取得できます。

代理店にとって、フィルタリングされたCSVは、クライアントからの「何がいつ変更されたか」という質問に答える簡単な方法です。
ほとんどのアクティビティログプラグインはCSVのみを提供しています。JSONエクスポートはDuplicatorのアクティビティログに特化しており、ログデータを他のツールにパイプしたり、レポートワークフローを自動化したりする必要がある開発者にとって、より適した選択肢となります。
エクスポートする前にフィルターを適用すると、完全なログ履歴ではなく、ターゲットを絞ったデータセットを取得できます。
WP-CLIでログを管理する
Duplicatorのアクティビティログには、複数のサイトを管理する開発者向けのWP-CLIサポートが含まれています。
基本的なエクスポートコマンドは次のとおりです。
wp duplicator-activity-log export
日付範囲でフィルタリングするためのフラグを追加し、コマンドラインから直接出力形式を設定します。これを簡単なスクリプトと組み合わせることで、各サイトに個別にログインすることなく、クライアントポートフォリオ全体にわたるログを取得できます。
パージスケジュールも同様の方法でスクリプト化でき、すべてのサイトでログデータベースを自動的にスリムに保つことができます。
リビジョンとアクティビティログを組み合わせてサイト全体を可視化する
リビジョンとアクティビティログは連携して機能します。
アクティビティログはサイト全体で何が変更されたかを示し、リビジョンはコンテンツ編集の正確な変更前後の状態を示します。それぞれが他方の欠けている部分を補います。
Duplicatorバックアップと組み合わせると、完全な状況を把握できます。
- アクティビティログは、何がいつ起こったかを示します。
- リビジョンは、変更前のコンテンツがどのようなものだったかを示します。
- バックアップがあれば、必要に応じて完全に元に戻すことができます。
実際には、ワークフローは次のようになります。サイトで問題が発生しました。まずアクティビティログを開いて、期間を絞り込み、どのユーザーがアクティブだったかを特定します。
そこから、問題がコンテンツ関連であればリビジョンを確認し、変更が単一の投稿やページよりも深い場合はバックアップを復元します。

このシーケンスは、手探りで調査するよりも高速です。
WordPressの変更履歴ツールは誰が必要とするのか?
ほとんどのWordPressサイトは、両方のシステムを導入することでメリットが得られます。ただし、その理由はサイトの利用方法によって異なります。
- 個人サイトのオーナー
アクティビティログは、自分が変更したことを忘れてしまった変更をキャッチします。当たり前のことのように思えますが、ほとんどの人が認めるよりも頻繁に起こります。記録があるということは、何かが機能しなくなったときに推測する必要がないということです。
- コンテンツチームとブロガー
複数の人が公開や編集を行っている場合、明確な担当者がいないと問題が発生します。リビジョンは投稿で何が変更されたかを示し、アクティビティログは誰が下書きを削除したか、誰が早期に公開したか、または誰が触るべきでないページを編集したかを示します。
- 代理店
クライアントが自分のサイトで何が変更されたか尋ねてきます。アクティビティログを実行していれば、推測ではなく、具体的な情報とタイムスタンプでその質問に答えることができます。エクスポート可能なログを使用すると、クライアントに直接ダッシュボードアクセス権を与えずに、その情報をクライアントに簡単に提示できます。
- WooCommerceストアのオーナー
価格変更、注文変更、配送設定の編集はすべて収益に影響します。ストアで何かが変更され、誰がいつ行ったかわからない場合、それは実際のビジネス上の問題です。お金が関わる場合は、追跡可能性が重要です。
- 複数のサイトを管理する開発者
WP-CLIサポートとエクスポート可能なログは、自動化されたサイト管理ワークフローに適合します。必要なデータを取得するために、各サイトに個別にログインする必要はありません。
よくある質問(FAQ)
WordPressには組み込みの変更履歴がありますか?
投稿とページのコンテンツのみ、リビジョンシステムを通じて利用できます。ログイン、プラグインの変更、設定の編集には、Duplicatorのアクティビティログのようなアクティビティログプラグインが必要です。
WordPressで誰が変更を行ったか確認できますか?
組み込みのリビジョン画面では、変更が特定のユーザーに明確に帰属しません。アクティビティログプラグインは、追跡されたすべてのイベントについて、正確なユーザー、タイムスタンプ、IPアドレスを記録します。より正確な変更履歴については、Duplicatorのアクティビティログをお勧めします。
WordPressのリビジョンはサイトの速度を低下させますか?
リビジョン自体はフロントエンドのパフォーマンスに影響しませんが、管理されないまま放置されると、時間の経過とともにデータベースの肥大化を引き起こす可能性があります。wp-config.phpを介してリビジョンを制限することで、すべてのバージョン履歴を失うことなくデータベースをスリムに保つことができます。
IPアドレスのログ記録はGDPRに準拠していますか?
GDPRでは、プライバシーポリシーに開示され、データが必要以上に長く保持されない限り、IPアドレスのログ記録は許可されています。Duplicatorのアクティビティログは、すべてのログエントリからパスワードとAPIキーを自動的に編集します。
バックアップを復元した場合、アクティビティログはどうなりますか?
データベースに保存されているログは、バックアップが取得された時点の状態に戻ります。特に復元を実行する前に、プラグインデータベース外に記録を保持するために、定期的にログをエクスポートしてください。
WordPressサイトのすべての変更を追跡開始
WordPressの改訂履歴は、サイトで発生する変更の一部をカバーしています。コンテンツの編集には役立ちますが、サイトのアクティビティのほとんどは完全に記録されません。
完全な可視性を得るには、それらと並行してアクティビティログを実行する必要があります。これらを組み合わせることで、何が変更され、誰が変更し、いつ変更したのかが明確に記録されます。
Duplicatorのアクティビティログは、年間$29からスタンドアロンプラグインとして利用できます。完全なツールキットが必要な場合は、Duplicator Eliteに、バックアップと移行用のDuplicator、およびWP Media Cleanupとアクティビティログがバンドルされています。ほとんどのWordPressサイトで見落とされている3つの機能が、1つのパッケージにまとめられています。
Duplicatorのアクティビティログをインストールすれば、数分以内にサイトで完全な変更履歴が実行されます!
ついでに、これらの他のリソースも気に入ると思います: