Google Site Kitとわしのプラグインが戦争してました。

Google Site Kitが動かない原因は、まさかの自作Reactプラグインだった件
犯人は名言と天気
今回、俺が試していたWordPressサイトでGoogle Site Kitが「インストール失敗」「無効なJSONレスポンス」「undefinedエラー」を連発。
でもwp-jsonは生きてる。パーミッションも問題なし。じゃあなんだよってことで、不安に思ってた。
結論。原因は自作のReactプラグイン
お前のせいかーーーーーーっ!!(作った俺がぜんぶわるい(笑))
機能は「今日の名言と天気をダッシュボードに表示する」こと、
Reactを使って何か作ってみたかったからWordPressのプラグインにしてみた。
色々ためして「もしや」と思ってこいつを無効化したらSite Kitはみるみる再起動した。
何が問題だったのか
悪さそうなポイント:
admin_enqueue_scripts
で意図しない場所でReactを読み込むfunctions.php
やプラグインの中でecho
してる- REST APIのレスポンスを破壊
Google Site Kitは、アカウント連携やAPI認証でREST APIを使うので、
1行の不要な出力でも失敗する。
対策
「日常」のプラグインを作る時は、これを必ず定数のテストで確認する:
- サイト全体が正常動作するか
- REST API(
/wp-json/) にエラーなし admin_enqueue_scripts
の読み込みは適切か
add_action('admin_enqueue_scripts', function($hook){
if ($hook === 'index.php') {
wp_enqueue_script(...);
}
});
まとめ
「不具合の犯人は意外と味方にいる」
この失敗から得た教訓はでかい。
でも同時に、自分で作ったプラグインが、それだけWordPressコアの深部まで展開してる。そんな存在に成長した。これだけは言える。
やっかいなエラーと戦う度に俺は強くなる。