エラー・不具合の解決

WordPressで「Parse error: syntax error」と出る原因と対処法

更新 2026年10月20日 公開 2026年10月20日 執筆・検証:WP-ing

直らないときは、無料でご相談いただけます(直らなければ料金はいただきません)。

結論:「Parse error: syntax error」は、WordPressのプログラム(PHP)のファイルに書き間違いや、使っているPHPの版では使えない書き方があり、PHPがファイルを読み取れないときに出るエラーです。テーマの functions.php にコードを貼り付けた直後や、ファイルを書き換えた直後、PHPの版を上げた直後などに起こることがあります。

エラーの文には、書き間違いのあるファイルの場所と行の番号が出ます。直前にファイルを書き換えたなら、まずは書き換える前のファイルに戻します。画面には「このサイトで重大なエラーが発生しました。」だけが出て、Parse error の文はエラーログやメールで分かる場合もあります。

目次
  1. 出る画面
  2. エラーの文の読み方
    1. よく見る文と、原因の例
  3. きっかけの例
  4. 作業の前に確かめること
  5. 直し方
    1. 1. どのファイルの何行目かを確かめる
    2. 2. 書き換える前のファイルに戻す
    3. 3. 戻せる写しが無いとき
    4. 4. 書き換えていないプラグインやテーマのファイルのとき
    5. 5. 直った後に確かめること
  6. 主なレンタルサーバーでの確かめ方
  7. 自分で直すのが難しいとき
  8. よくある質問
    1. 管理画面のエディターで直せますか?
    2. エラーの行を見ても、おかしなところが見つかりません。

この記事は、WordPressのトラブル解決を受け付けているWP-ingが、エラーの文の読み方と直し方をまとめたものです。

出る画面

PHPのエラーを画面に出す設定になっているサイトでは、次のような文が出ます(例です。ファイルの場所や行の番号はサイトによって違います)。

Parse error: syntax error, unexpected token "}" in /home/…/wp-content/themes/テーマ名/functions.php on line 25

エラーを画面に出さない設定のサイトでは、この文は見えず、WordPressの重大なエラーの仕組みによって、次の表示になる場合があります。

  • サイトの表側:「このサイトで重大なエラーが発生しました。」
  • 管理画面・ログイン画面:「この Web サイトに重大なエラーが発生しました。サイト管理者のメール受信箱で手順を確認してください。」

この表示が出ているときの確かめ方は、「重大なエラー」の記事にもまとめています。なお、wp-config.php に書き間違いがあるときは、WordPressのこの仕組みが動き出す前に止まるため、画面が真っ白になったり、「500」のエラーになったりすることがあります(真っ白の記事・500エラーの記事)。

エラーの文の読み方

文の部分 意味
Parse error: syntax error PHPの書き方(文法)に誤りがあり、ファイルを読み取れなかった
unexpected ○○ ○○のところで、PHPが思っていなかったものが出てきた
in …/functions.php 誤りのあるファイルの場所
on line 25 PHPが誤りに気づいた行。本当の誤りは、その行か、少し前の行にあることがあります

ファイルの場所に wp-content/themes/ とあればテーマ、wp-content/plugins/ とあればプラグインのファイルです。

よく見る文と、原因の例

PHP 8.4 で確かめた文の例です。PHPの版によって、言い方が少し違うことがあります。同じ文でも、原因は一つとは限りません。

出る文(例) 原因の例
syntax error, unexpected variable "$b" その前の行の終わりの「;」が抜けている
Unmatched '}' 閉じる「}」が多い
Unclosed '{' on line 2 「{」を閉じる「}」が足りない。引用符(" や ')の閉じ忘れでも出ることがあります
syntax error, unexpected token "<", expecting end of file コードを貼り付けたとき、途中に <?php がもう一度入った
syntax error, unexpected token "{" PHP 8 で使えなくなった古い書き方($a{0} など)。PHPの版を上げた直後に出ることがあります

ほかに、ネットのページからコードを写したときに、全角の空白( )や、形の変わった引用符(‘ ’・“ ”)が混ざって、思いがけない場所でエラーになることもあります。形の変わった引用符では、Parse error 以外のエラーになることもあります。

きっかけの例

  • テーマの functions.php に、ネットで見つけたコードを貼り付けた
  • レンタルサーバーのファイルマネージャーやFTPのソフトで、テーマ・プラグイン・wp-config.php を書き換えた
  • レンタルサーバーでPHPの版を上げた(PHPの版を上げるときの手順)

管理画面の「テーマファイルエディター」「プラグインファイルエディター」で、使っているテーマ・有効なプラグインのPHPのファイルを保存したときは、WordPressが保存の後に管理画面とトップページを読み込んで、エラーが出ないかを確かめます。そこでエラーが見つかると、変更が取り消され、元のファイルに戻ります。このときは「○○ ファイルの○行目でエラーが発生したため、PHP コードの変更が適用されませんでした。修正して再度保存してください。」と出ます。ファイルマネージャーやFTPで書き換えたときや、止めているテーマ・プラグインのファイルを書き換えて、後から有効にしたときは、この確かめは行われません。

作業の前に確かめること

  • バックアップ:レンタルサーバーの自動バックアップなどがあるか。いつの時点のものか(保存日時)と、元に戻す方法も見ておきましょう(更新の前のバックアップ)。
  • 今のファイルの写し:直す前に、エラーの出ているファイルを手元にダウンロードしておきます。直し方を間違えても、今の状態には戻せます。

直し方

まず1でファイルと行を確かめます。そのファイルを自分で書き換えた場合は2・3へ、書き換えていない場合は4へ進みます。

1. どのファイルの何行目かを確かめる

画面にエラーの文が出ていれば、ファイルの場所と行の番号を書き写します。画面に「重大なエラー」だけが出ているときは、次のどちらかで分かることがあります。

  • 管理者へのメール:原因のテーマやプラグインが分かると、WordPressから「設定」→「一般」の管理者メールアドレスあてに、件名「[サイト名] サイトで技術的な問題が発生しています」のメールが届くことがあります。「エラー詳細」の欄に「エラータイプ E_PARSE が …ファイルの …行目で発生しました。」と、ファイルと行が書かれています。
  • サーバーのエラーログ:「Parse error」を含む記録に、ファイルと行が残っていることがあります。エラーが出始めた日時と合う記録を見ます(主なレンタルサーバーでの確かめ方)。

2. 書き換える前のファイルに戻す

直前に書き換えたファイルなら、まずは、ファイルマネージャーやFTPのソフトで、書き換える前のファイルを元の場所に戻します。手元に写しが無いときは、レンタルサーバーのバックアップから、そのファイルだけを戻せる場合もあります。

コードを貼り付けて足しただけで、元からあったコードを変えたり消したりしていない場合は、貼り付けた部分だけを消して保存すると、元の状態に戻せます。

3. 戻せる写しが無いとき

書き換える前のファイルが無いときは、エラーの文に出た行と、その少し前の行を見て、次のところを確かめます。どこを直せばよいか分からないときは、無理に書き換えを続けず、ご相談ください。

  • 行の終わりの「;」が抜けていないか
  • 「{」と「}」、「(」と「)」が、正しい組み合わせで閉じられているか
  • 引用符(" や ')が、始まりと終わりでそろっているか
  • 貼り付けた部分に、<?php が余分に入っていないか
  • 全角の空白や、形の変わった引用符が混ざっていないか

直したら保存し、もう一度サイトを開きます。直してもエラーが続くときや、別の行のエラーに変わったときは、作業の前にダウンロードした写しに戻してから、ご相談ください。

直した後に「Warning: Cannot modify header information – headers already sent」と出るときは、ファイルの先頭や最後に、空白や空の行が入っていることがあります(「headers already sent」と出るときの記事)。

wp-config.php には、データベースのパスワードなどの大事な情報が書かれています。人に相談するときや、ネットで調べるときは、ファイルの中身を含めずに、エラーの文だけをお知らせください。

4. 書き換えていないプラグインやテーマのファイルのとき

自分では書き換えていないプラグインやテーマのファイルで出ている場合は、更新や、PHPの版の変更がきっかけになっていることがあります。

  • PHPの版を変えた直後なら、元の版に戻すと表示が戻ることがあります。これは一時的な対処なので、表示が戻った後に、プラグインやテーマが今のPHPの版に対応した新しい版を出していないかを確かめます。
  • プラグインなら、wp-content/plugins の中の、そのプラグインのフォルダ名を変えると、そのプラグインが止まります(例:plugin-name → plugin-name-off)。くわしくは「重大なエラー」の記事の「プラグインを止めて確かめる」をご覧ください。
  • テーマなら、同じ記事の「テーマを確かめる」の手順で、WordPressに標準のテーマに切り替えて確かめます。

止めた・切り替えた後は、プラグインやテーマに新しい版が出ていないか、今のPHPの版に対応しているかを確かめます。分からないときは、ご相談ください。

5. 直った後に確かめること

  • ログアウトした状態で、トップページ・エラーの出ていたページ・お問い合わせフォームなどが、ふだんどおり動くか(必要に応じてスマホでも)
  • 管理画面に入れるか
  • 確かめるために、PHPのエラーを画面に出す設定にしていた場合は、元に戻したか(そのままだと、訪問者にもファイルの場所などが見えてしまいます)

主なレンタルサーバーでの確かめ方

サーバー エラーの確かめ方
エックスサーバー サーバーパネル「エラーログ」
ConoHa WING 「サイト管理」→「アクセス解析」→「ログ」
ロリポップ! 「PHP設定」の display_errors で、エラーを画面に出す設定を一時的に有効にする(訪問者にもエラーの中身が見えることがあるため、確かめたらすぐ元に戻す)
さくらのレンタルサーバ サーバーコントロールパネルの「サーバーステータス」→「アクセスログ」で、エラーログの「保存する」に印を付けてから、「本日のエラーログ」で見る

画面の名前は変わることがあるため、くわしくは各社の案内をご覧ください。

自分で直すのが難しいとき

次のような場合は、無理に作業を進めず、ご相談ください。

  • どのファイルの何行目か分からない
  • 書き換える前のファイルが無く、どこを直せばよいか分からない
  • 直すたびに、別のエラーが出る
  • ファイルマネージャーやFTPの使い方が分からない

WP-ingでは、このエラーをはじめ、WordPressの不具合の修理を承っています。状況を確かめて、作業の前に料金をご案内します。直らなければ料金はいただきません。お支払いは、直ったことを確かめていただいてからです。

よくある質問

管理画面のエディターで直せますか?

管理画面に入れて、直したいのが使っているテーマ・有効なプラグインのファイルなら、「テーマファイルエディター」「プラグインファイルエディター」で直せることがあります。保存の後の確かめでエラーが見つかれば、WordPressが変更を取り消します。サイトや管理画面が開けないときは、ファイルマネージャーやFTPのソフトで直します。

エラーの行を見ても、おかしなところが見つかりません。

PHPは、誤りのところから少し先まで読んでから、エラーに気づくことがあります。出た行より前の行を、さかのぼって確かめてみてください。「Unclosed '{' on line 2」のように別の行の番号が入っているときは、その行の「{」がどこで閉じられているかを確かめます。

参考にした情報

この記事の内容は、2026年10月20日に確認したものです。

コラムの一覧へ

無料で相談する