wp-cliを使えば、オリジナルファイルから変更が合った点を洗い出せます。
もちろん、わざと変更している場合も有るでしょうが、不正アクセスや、間違って操作して何かしてしまい、WordPressが壊れた場合にはコチラで修復出来る可能性があります。
wp-cliでチェックを行う。
wp-cliの入れ方は別途。すぐに使ってみたかったら、コチラ
コマンドはこのように。
$ wp checksum core --path="/var/www/html/public_html"
パスは通してあるならいりませんが、わからなければWordPressが置いてある所を指定してあげて下さい。
問題なければ以下の用に出力が。
Success: WordPress installation verifies against checksums.
wp-cliでチェックを行う。(失敗時)
問題があった場合のテスト。まずは大事なファイルをふっとばして見ます。
[@]# ls index.php wp-admin wp-config.php wp-includes wp-mail.php xmlrpc.php license.txt wp-blog-header.php wp-config.php.bak wp-links-opml.php wp-settings.php readme.html wp-comments-post.php wp-content wp-load.php wp-signup.php wp-activate.php wp-config-sample.php wp-cron.php wp-login.php wp-trackback.php [root@]# rm wp-login.php rm: 通常ファイル `wp-login.php' を削除しますか? y [@]# ls index.php wp-admin wp-config.php wp-includes wp-settings.php license.txt wp-blog-header.php wp-config.php.bak wp-links-opml.php wp-signup.php readme.html wp-comments-post.php wp-content wp-load.php wp-trackback.php wp-activate.php wp-config-sample.php wp-cron.php wp-mail.php xmlrpc.php
wp-login.phpを消してみました。
管理画面にアクセスしてみようとすると、こんな画面
The requested URL /wp-login.php was not found on this server.
まぁ消したのでね。そりゃね。
この状態で実行。
[@]# wp checksum core --path="/var/www/html/public_html" Warning: File doesn't exist: wp-login.php Error: WordPress installation doesn't verify against checksums.
しっかりと壊れたファイルを確認してくれることがわかります。
壊れたファイルを元に戻す。
壊れたファイルが確認できているのであれば、もとに戻す事もできます。
[@]# wp core download --force --path="/var/www/html/public_html" Downloading WordPress 4.9.7 (en_US)... md5 hash verified: hogehoge Success: WordPress downloaded. [@]# wp checksum core --path="/var/www/html/public_html" Success: WordPress installation verifies against checksums.
これでもとに戻りました。ただ、もともとのファイルを戻すだけなので、改良を入れていた場合や、他のファイルを追加している場合には注意が必要です。
ちなみに、wp-cliはroot権限でやることはよろしくありません(読み込んだファイルでの実行で怖いことを起こさないため)
使うときはWordPress用のアカウントでね。