WordPressの管理画面でテーマファイルエディターでPHPコードの編集時に[syntax error, uncxoecctcd (T_CONSTANT ENCAPSED_STRING)]が表示されてしまう場合の対処法を備忘録的に投稿しておきます。
スペースもSyntax Errorの原因
今回、ハマったのがこのエラー画面
何かの文字にエラーがあるのは分かるのですが、メッセージから汲み取ることができませんでした。
盲点だったのがコードのスコープ内を視認するためのインデント。
今回はVisual Studio Codeで下書きしたコードを貼り付けたのが敗因でした。インデントは個性がありますが、私の場合は半角スペース2つ。
しかし、WordPressのテーマファイルエディターはインデントが[TAB]になっています。
そのため挿入時にコードの行頭に入っている半角スペースが[Syntax Error]の原因になっていました。
行頭を[タブ]に変更すれば、正常に更新ができました。
まとめ
今回は短い記事ですが、WordPressの管理画面でテーマファイルエディターでPHPコードの編集時に[syntax error, uncxoecctcd (T_CONSTANT ENCAPSED_STRING)]が表示されてしまう場合の対処法について書きました。
ほとんどの場合、コード内の文字列に原因がありますが、インデントするための文字[TAB]や[半角スペース]に問題がある可能性があります。
特にテーマファイルエディターの場合は、関数などのスコープ内で改行すると[TAB]が行頭に自動追加される仕様になっています。
しかし別のエディターからコードをコピペすると、インデント部分がそのままコピーされてしまい、半角スペースなどが設定されていた場合に今回のようなエラーになってしまいます。
文字列エラーなので、コード内の文字列に注目してしまいがちですが半角スペースも文字という話でハマってしまいました。
WordPressのテーマファイルエディターで[syntax error, uncxoecctcd (T_CONSTANT ENCAPSED_STRING)]エラーで原因が特定できない人の参考になれば幸いです。
スポンサーリンク
最後までご覧いただき、ありがとうございます。