PHPのバージョン変更したことでエラーが出る
PHPバージョン7系のサーバーからPHPバージョン8系サーバーにサイト移管した時のことです。
Warning: Undefined array key 0 in ~
のようなエラーが出ました。
そもそもちゃんと新しいサーバーでテストサイトを作って行うのが最上ですが、工数に入ってなかったので深夜に突貫作業しました。
※良い子は真似しないでください(^o^)
エラーが出ているPHPのソースを見てみるとどうやらカテゴリ名取得でエラーが起こっている。
そもそも7系でエラーが出ていなかったので7系なら大丈夫じゃねえかな、と一旦サーバーのPHPバージョンを7系にしてみる。
エラーが出ない。ミッションコンプリート!
…んなわけない。このまま終わったら8系への対応を見捨てるということになります。
お金貰わずサービスでやるならこういう暫定処置もするけど。
さて、再度PHPを8系に戻してソースを見てみる。
$category = get_the_category();
$cat_id = $category[0]->cat_ID;
$cat_name = $category[0]->cat_name;
$cat_slug = $category[0]->category_nicename;
このままだと$categoryに値が入らない場合、上記エラーが出るので、
$category = get_the_category();
if(isset($category, $category[0])) {
$cat_id = $category[0]->cat_ID;
$cat_name = $category[0]->cat_name;
$cat_slug = $category[0]->category_nicename;
}
このように修正。エラーは出なくなりました。
カテゴリ内に適当な記事を入れるだけでも回避できそうだけど、プログラム的にはよろしくないです。
ちゃんとエラー処理は作っておきましょう。
いじょう。
関連記事
-
Redirectionプラグイン:REST APIの検索で止まる
久しぶりのWordPress忘備録。 Redirectionプラグインを初期設定 …
-
WordPressで会員サイト的なものを作りたい
WordPressで会員サイト的なものを作る と言う題目で幾つか記事があったんで …
-
マルチサイト引越し時の注意
マルチサイト引越の手順でひっかかったので忘備録。 引越し先のWordPressイ …
-
WordPressのページを印刷しようとするとスタイルが崩れる
WordPressのページを印刷しようとするとガタ崩れする時があると思います。 …
-
続・WordPress 不正アクセスとの飽くなき戦い
WordPressへの不正アクセスと引き続き戦う、だいすけです。こんにチワワ! …
-
WEBサイトのスクリーンショットをサムネイル化する
弊社の制作実績を登録していこうと思ったのですが、直近のものだけでも軽く30を超え …
-
.htaccessに最低限設定しておいたほうが良いこと
簡単で結構効果のあるセキュリティとして.htaccessの設定がありますが、最低 …
-
カスタムフィールドの画像をアイキャッチに自動登録
毎度おなじみ自分への忘備録です。 投稿時にカスタムフィールドの画像 …
-
get_postsの初期値が5件だった件
もう、表題のとおりなんですが忘備録。 WordPressのget_postsの初 …
-
プラグイン無しで外部サイトのRSSを表示するRSSリーダー的なもの
外部RSS(ブログの新着記事)を読み込む案件があったので「プラグインでええよなー …