
wordpressバージョンアップして色々困って気づいたこと
wordpressでサイトを作る仕事はまぁまぁやっているんですが、他人様が過去に構築してくださったものでバージョン古くてバージョンアップしたら色々大変で、自分がやっていることに気づいたってお話です。
#駆け出しエンジニアとつながりたい みたいな人に知ってほしいけど、そんなこと習ったことないって思われちゃいそうな、まったくキラキラしてない内容です。
他人様が構築してくださったサイトもそろそろバージョンアップしないとね
そういう作業をしたわけです。
5.6系を6.1系にしましょうっていう。あとプラグインもモリモリ要バージョンアップがありました。
構築から数年経過しちゃった感じで、まあ、あるあるです。
バージョンアップしたら動かないわけです
まるっとテスト環境にもっていって試しにCLIからアップデートかけたわけです。CLI分かんない人はググると少し幸せになれるかもです。
$ wp core update
$ wp plugin update --all
そしたらエラーで動かないんですよ。インターナルサーバーエラーとかで。
泣きながらエラーログを漁るんですけど、nginx+php-fpmのデフォルトのエラーログはなかなか見づらかったりするわけです。
こんな部分を何とかしました
細かいお話はアレとしてザックリこんな感じでした。
WordPressPopularPostsのクラス定義が変わってて思いっきりエラー。
→使っている箇所を探して書き直し。ウィジェット使っている箇所が一律表示されなくて、画面崩れまくり。
→ WP_Widgetのdisplay_callbackをオーバーライドして逃げた。
管理側もClassic Widgets入れてでウィジェット画面も従来どおりにAll in One SEOのOGP設定が変わってて記事のシェアが上手くいかない。
→設定しなおし。
それを踏まえて自分が苦労しなかった理由に気づく
いやーめんどくせえッスねえと思ったのには理由があって。自分が一から構築する場合。
外部のテーマを使わない。自作する。
ウィジェットも使わない。
管理画面で色々やりたい需要には自前でプラグイン作る。プラグインも必要最低限しか入れない。
PopularPosts?All in One SEO?Advanced Custom Fields?
便利なんですね、でも使いません。
コンテンツの管理機能としてwordpressは便利だけど、それ以上は自前でやりますというスタンス。
なのでcore updateでエラーに遭遇することもほぼ無いし、プラグインアップデートで困るなんてことも無いんです。プラグインアップデート自体がほぼ無い。
wordpress構築でキラキラしたいよね
本当はオシャレなテーマを見つけてインストール✨
便利なプラグインを見つけてインストール✨
で構築したいわけじゃないですか。
それで済めば良いんですけど、直感的にそういうの怖いんです。
もちろん自作のコードが安全かって話もあるんですけど、天秤にかけても自作コードの方が範囲分かってるので安心かなって思うわけです。
自分でコントロールできる範囲が分かんない場合は天秤にさえかけられない話なのですけど。
wordpressも知らないだけで色々あるんですよ
参考までにJVNの検索結果を貼っておきます。知らなきゃ怖くないってのが気軽なDXかなって気持ちももちろんあります。