WordPressで記事を更新すると「辿ったリンクは期限が切れています。」の解決法
事象
カスタムフィールドをゴリゴリ使っているテーマで記事を更新すると「辿ったリンクは期限が切れています。」と表示されてしまう現象が発生した。
原因
カスタムフィールドが増えたことによってフォームデータの送信数が「max_input_vars」の値を上回ってしまった。
記事更新時にFirefoxのインスペクターでフォームデータの生データをコピーし、「&」をカウントしたところ、1000を超える変数があった。
phpinfo();を見ると「max_input_vars」の値は1000に制限されている。これはPHP 5.3.9から実装されたディレクティブでデフォルトは1000。
解決法
「max_input_vars」の値を増やす。
変更例は次の通りですが、サーバー環境によって弄れなかったりするので各自調べてください。
php.ini または .user.ini
max_input_vars = 2000
.htaccess
php_value max_input_vars 2000
この値ですが、闇雲に増やせば攻撃手段を提供することになるので、必要な数だけ増やすべきだと思いますが、デフォルトの1000という数字も適当そうなのであまり神経質になる必要は無いと思います。
--
以上