〔function.php〕を編集したら「nonce_failure」というエラーが発生した。
たまにあるみたいだ。
でも、「nonce_failure」は心配ないみたい。
とはいえ、テーマファイルエディターを調整していて、おかしな表示が出るのは心配。
「nonce_failure」が出た時の対処方法を分かった範囲でご紹介。
「nonce_failure」が出た状況
「nonce_failure」というエラー表示が出たのは、
とき。
function.phpの編集は下手すると、WordPressの管理画面に入れなくなったりする。
このため、「nonce_failure」というエラーが出たときには、ちょっと焦った。

function.phpファイルの編集は慎重に!
「nonce_failure」の意味
「nonce」は「使い捨てのランダムな値」のこと。
「failure」は「失敗、不足」のこと。
WordPressで「nonce」は
A nonce is a “number used once” to help protect URLs and forms from certain types of misuse, malicious or otherwise.
Technically, WordPress nonces aren’t strictly numbers; they are a hash made up of numbers and letters. Nor are they used only once: they have a limited “lifetime” after which they expire. During that time period, the same nonce will be generated for a given user in a given context. The nonce for that action will remain the same for that user until that nonce life cycle has completed.
これを日本語に翻訳したのが↓
nonceは、悪意のあるものであろうとなかろうと、特定の種類の誤用からURLとフォームを保護するための「一度だけ使用される番号」です。
技術的には、WordPressのナンスは厳密には数字ではありません。それらは数字と文字で構成されたハッシュです。また、一度だけ使用されるわけでもなく、有効期限が切れるまでの「寿命」が限られています。その期間中、特定のコンテキストの特定のユーザーに対して同じ nonce が生成されます。そのアクションの nonce は、その nonce のライフ サイクルが完了するまで、そのユーザーに対して同じままです。
となる。
要は、「nonce_failure」は一時的なもので、サイト保護のために使用される表示。
テーマファイルエディターを長く開いたまま作業していたり、プラグイン等でテーマファイルエディターの編集に制限がかかっていたりすると出るらしい。
我が家の場合、テーマファイルエディターの編集に制限をかけるようなプラグインは使っていないため、プラグインの不都合は考えられない。
〔テーマファイルエディター〕の更新で「nonce_failure」エラーが消えた
「nonce_failure」エラーの対処法としては

WordPressのダッシュボード、〔外観〕⇒〔テーマファイルエディター〕から、function.phpを編集し「nonce_failure」というエラー表示が出らブラウザの更新ボタンを押す
又は
テーマファイルエディターを長く開いたまま作業していたことが「nonce_failure」の原因なら、リロードすれば「nonce_failure」表示が出なくなる。
ブラウザをリロード(更新)しても「nonce」の表示が出たら、プラグインを一度すべて停止して、ひとつずつ有効化してどのプラグインに原因があるか確認し、問題のあるプラグインは停止してしまう。
まとめ
function.phpの編集は下手すると、WordPressの管理画面に入れなくなったりする。
以上は、鉄則。
家もこの事件以降、WordPressのダッシュボードの〔テーマファイルエディター〕でfunction.phpファイルを編集することがなくなった。

function.phpのバックアップはコピー&ペーストでテキストエディタに張り付けるだけでもOKだが、Windowsのメモ帳には貼り付けないように。
Windowsのメモ帳に張り付けると、改行コードの調整などができないため、トラブルの原因になる。
コメント