本機能はHima Art Utilityのバージョン5.9以降で利用可能です
本機能を有効化すると、1時間ごとにテーマフォルダ内(子テーマを有効化している場合は親テーマも含む)にあるファイルの更新日時の差分、存在していたファイルの削除、存在していなかったファイルの追加を検知してデータベース内に記録を残します。
保存されたログはダッシュボード(簡易表示)と「HA Utility」メニューの「テーマ変更ログ」から開くページにてどのような変更があったのかを確認することができます。
ログを定期的に確認することで、自身で編集した覚えのないファイルに変更があったり、追加した覚えのないファイルが追加されていることに気づくことができ、改ざんされた可能性があることに気づくきっかけとなるかも知れません。
確認できるのは、いつ(検知時間から1時間以内)、どのファイルに変化があったかのみで、変化した内容の詳細までは判別できませんが、それでも大きく役立つ機能だと思います。
また、管理者権限を持つユーザーとして不正にログインされ、テーマ内のファイルを書き換えられるというのが改ざん被害で多く発生するケースだと思いますので、不正にログインされたことに気づくことができる「ログイン履歴の記録機能」や「サイト管理者へログインを通知する」機能と併用することでより早期に不穏な動きに気づくことができるようになるでしょう。
テーマファイル変更ログ機能の使い方
データ(ログ)保存用テーブルの作成
本機能は、WordPressサイトが接続しているデータベース内に「接頭辞-haup_change_theme_file_log」というテーブルを作成し、そこへテーマ(子テーマ使用の場合は子テーマ+親テーマ)フォルダ内に何か変化があった場合にログを保存します。
このテーブルは本プラグインを初めて使用する方は自動で作成されるため、特に何もする必要はありません。
本プラグインのバージョン5.8.xまでを使われている方がバージョン5.9以降を更新インストールした際には、以下のようなメッセージが管理画面の上部に表示されるので、「データベースを更新」をクリックすれば準備が完了します。

本機能のために作成したテーブルは、プラグインの無効化を行うと自動で削除され、データベースに不要なテーブルが残らないように配慮しています
機能の有効化、ログのサンプル
テーブルの作成が完了したら、「HA Utility」メニューの「セキュリティとスパム対策」を開き、「サイト全体」タブの中にある「テーマファイル変更ログ」を有効化することで、その時点から1時間置きにテーマ(子テーマ使用の場合は子テーマ+親テーマ)フォルダ内のファイルの変化を検知して記録を開始します(機能を無効にするとその時点で記録は停止します)。
以下がログ表示のサンプルです(左がダッシュボードウィジェット、右がログ表示の別画面)


ログ表示はファイルの変更があった場合のみ「チェックした日時」「変更されたファイル」が表示され、ログ表示の別画面ではログの削除もできるようにしています。
補足事項
記録から除外するもの
本機能では、以下に記載する、改ざんによるサイトへの影響が少ないもの、WordPress側で頻繁にファイルの書き換えが行われる可能性のあるもの(主にブロックテーマ用のフォルダ・ファイル)は変更ログから除外するようにしています。
- 特定の拡張子を持つファイル
- log txt md pot png jpg jpeg gif svg webp ico woff woff2 ttf eot otf
- 次のディレクトリ内のファイル
- assets languages styles templates parts patterns overwrite-theme-json node_modules
- 次のファイル
- theme.json screenshot.png readme.txt
既知の問題
本プログラムでは、初回の検知でテーマのファイル構造を一旦記録した状態から、次回以降変化があるかどうかを検知し、検知が完了したらファイル構造を更新するということを繰り返す機構上、初回のファイル構造取得時にすべてのファイルが追加されたと誤検知し記録されることがあります(プログラム上で初回の記録を残さないようにしてはいるものの、何等かのタイミングで記録されてしまうことがあるようです)。
また、ファイルの変更日時を基準に変化があったかどうかを検知する機構上、テーマの更新を行った場合にはすべてのファイルの日時が更新されるため、テーマ更新によって削除・追加されたファイルすべてが記録されますが、不具合ではありません。
いずれの場合もプログラム上やサイトの動作に影響を及ぼすものではなく、あくまでも記録として残る可能性があるという話ですので、確認してそのまま放置されても問題ありません。













コメントを残す