お問い合わせ

WordPressの管理画面に突然ログインできなくなった話

はじめに

昨日まで普通にログインできていたWordPressの管理画面に、突然入れなくなりました。
表示されたのは「予期しない出力により Cookie がブロックされました」というエラー。

プラグインもテーマも特にいじっていなかったので、最初は「サーバー側の問題かな?」と思っていたのですが…

結論から言うと、自分のテーマ内の functions.php に書かれた1行が原因でした。

今回は、その原因と解決までの流れをまとめておきます。
(今後同じように困る人がいたら、この記事が少しでも助けになればうれしいです!)

症状:「Cookie がブロックされました」でログイン不可

ある日いつものようにWordpressの管理画面にアクセスすると、ログイン画面で次のようなエラーメッセージが表示されました。

予期しない出力により Cookie がブロックされました。
ブラウザのCookie設定を確認してください。

Cookie設定を見直しても、シークレットモードでも、ブラウザを変えても変化なし。
「え、昨日まで普通に入れたのに…?」と焦りました😇

解決への道:debug.logで原因を特定

プラグインを全停止しても直らなかったので、
「もしかしてテーマの中で何か出力してる?」と思い、サーバー上の wp-content/debug.log を直接確認してみました。

すると、ログにこんな記述が。

  • [12-Oct-2025 14:57:45 UTC] PHP Warning: Cannot modify header information – headers already sent by (output started at /home/users/0/oops.jp-shinaryu/web/sairai.jp/wp-content/themes/sairai/functions.php:47)

このログを見ると、
「functions.php の47行目で何か出力が始まってしまっていて、WordPressがログインに必要なCookie(ヘッダー情報)を送れない」という意味らしいです。

最初は正直よく分からなかったのですが、ChatGPTに「このエラーってどういう意味?」と聞いてみたところ、「functions.php の末尾にある ?> や余分な改行が原因の可能性があります」と教えてくれました。

実際にファイルを確認してみると…
しっかり末尾に ?> と改行が入っていました。笑
これを削除したら、無事ログイン成功!!🎉

原因:functions.php の末尾にあった「?>」

PHPファイルは、閉じタグ ?> の後に改行や空白があると
「出力された」と判断されてしまい、
それ以降に送られるCookieやヘッダー情報がブロックされます。

WordPressではその事故を防ぐために、?> を書かずに終わらせるのが通例なんです。

つまり今回の原因は、ほんの数文字。
でも、それだけで管理画面に入れなくなるとは…奥が深いですね😅

修正後の対応

  • functions.php の末尾の ?> を削除
  • 余計な改行・空白をなくす
  • ファイルを UTF-8(BOMなし) で保存

保存後、再度ログインしてみると、何事もなかったかのようにスムーズに管理画面へ。
一瞬で解決しました。

今回の学びまとめ

  • 「Cannot modify header information」や「Cookie がブロック」は出力系ミスが原因のことが多い
  • debug.logを確認すれば原因のファイルと行数が分かる
  • PHPファイルは閉じタグを書かない・BOMなし保存が鉄則
  • ChatGPTは、エラー内容を翻訳&原因を推測してくれる

おわりに

正直、最初は「もうダメかも」と思っていましたが、冷静にログを見て、ChatGPTに相談したことで解決できました。

僕のようにエンジニアではない人でも、「現状」「困っていること」「どうなりたいか」を丁寧に伝えれば、ChatGPTは一緒に原因を探してくれます。

トラブルにぶつかったときは、諦めずに一歩ずつ。
ログとChatGPTを味方につければ、きっと解決の糸口が見つかります!

まとめ

WordPressのエラーは難しく見えても、冷静にログを読めば必ず理由があります。
ChatGPTに相談しながら進めるだけでも、確実に前に進める。
そんなことを実感した出来事でした。

最新記事

2025年の仕事振り返り!

ダイビングのライセンス取得!

2年ぶりに一人暮らしを始めました