WEB制作

WEB制作

【解決】WordPress 4.9.8でプラグインが新規追加できない不具合に遭遇

画像はイメージ

WordPressテーマの対応兼ね合いなどでWordPress4系列で運用している人も少なくはない(たぶん)気がするけど、拙者も別サイトで4.9.8で運用しているサイトが複数ある。

そんな中、思い当たることはないのに、なぜだか4.9.8を使っている複数の全く別のサイトでプラグインの新規追加の機能に不具合があることにたまたま気付いた。

事象

WordPress 4.9.8で運用しているテーマや導入プラグインなどが全く別の複数サイトでプラグインの「新規追加」をしようとするとPHPにエラーが発生して管理画面が真っ白になる不具合に遭遇。

ファイルで言うと、plugin-install.php の処理でエラーが出るっぽい。

FTP経由でのアップロードやインストールは問題なくできるため、サーバー容量の問題ではなさそう。パーミッションも問題ない。直前に何か改変した覚えもない。

試したこと

関連しそうなプラグインの停止などを試みるも状況は変わらず。

原因の調査 1日目~2日目

WordPress 4.9.8自体がサポート終了しているのと、サーバーで利用しているPHPも7.4と同様にサポート終了しているので、WordPressのプラグイン配布元などのサーバーとのやりとりで不具合が起きるのではないかと思う。いや、勝手にそんな気がするだけで真実かはわからない。

エラーログを調べると

PHP Fatal error: Cannot redeclare plugins_api() 以降省略

というのが出るけど、海外のサイトが少しヒットするくらいで同じ事例はひっかからない。

一つのサイトだけだったら、そのサイト固有の不具合が考えられるけど、全く別の4.9.8の複数サイトで同じ症状となると、自分の力が及ぶ範囲外の原因を考えざるを得ない。

原因の調査 3日目

さっぱり原因がわからず、外部要因ということにしようとして3日目を迎えた。泥沼状態。

そこで、昔働いてたブラック企業のIT担当者が口うるさく言っていたのがPC関係でトラブった時は「原因を切り分ける」のが重要ということ。

WordPressの場合は「Health Check & Troubleshooting」という、何がトラブルの原因になっているか調査するのに便利なプラグインがある。

これを使うとテーマを一時的に無効にしたり、プラグインをまとめて向こうにしたり、原因の特定に役立てることができる。

拙者は泥沼状態で瀕死の状態でローカル環境にテストサイトを作って試したが、本番サイトでやっても本番を外部には出しつつ、管理者だけテスト画面を表示できるらしい。

まぁ、プラグインだから管理画面に入れないレベルだとどうしようもないが、FTP経由だったらプラグインを入れられたので試してみた。

色々やっていると、特定のタイミングで「新規追加」ボタンが使える時がある!

原因はプラグイン「XML Sitemap Generator for Google」だった

丸3日費やして特定した原因はプラグイン「XML Sitemap Generator for Google」だった。またプラグイン、お前かよ。

でも、まさか、である。

もっとシステムをゴリゴリするようなプラグインばっかり疑っていたから、こんな影響しさなそうなプラグインが原因で不具合が出るとは思わなかった。配布画面では対応していることになっていたが、たぶん、4系列との相性が悪いのかなと思う。

とにかくこいつが全ての原因だった。

思ったこと色々

CMSというかWordPressで運用するデメリットであるけど、WordPressやPHPにはバージョンやサポート期間があるから、同じ状態ではせいぜい3年くらい前でしか運用できないと、1~2日目はしみじみ思ったのであった。

3日目になると具体的な改善は全くできていないけど、FTPアップではインストールできるから当面気にしないのが健康によいだろうか・・・などと感じつつも、末端ながらWeb屋のしょうもないプライドで解決したい気持ちもあった。

しかし、意外と大手企業とかの何百ページもあるサイトでも多いけど、結局は静的サイトでPHPとかデータベースか使わずに運用するのが最強かも、と思う今日この頃であった。

とりあえず、プラグインは何の気なしに入れまくったり、更新するのは絶対NGだ。経験上、WordPressのトラブル原因の半分以上はプラグインのせいだ。

WEB制作

【2023年版】WordPress Popular PostsでImportant notice for administrators~という警告と対処法

画像はイメージ

WordPressの人気記事を自動表示するプラグイン「WordPress Popular Posts」で、管理画面ログイン時に下記のエラー(警告表示)が表示されて焦っている人に対処法の一例を紹介。

日本のサイトでも初心者から上級者まで、使っている人が割と多い気がするプラグイン。

エラー(警告表示)の文言

Important notice for administrators: The WordPress Popular Posts “classic” widget is going away!

This widget has been deprecated. Please replace it with the WordPress Popular Posts block or the wpp shortcode as soon as possible.

Google翻訳による和訳

管理者への重要なお知らせ: WordPress Popular Posts の「クラシック」ウィジェットは廃止されます。

このウィジェットは廃止されました。できるだけ早くWordPress Popular Postsブロックまたはwppショートコードに置き換えてください。

ざっくりとしたエラー表示の意味や原因

WordPress Popular Postsのバージョンアップに伴って、Wordpress5.8以降でサポートされているブロックウィジェットの機能の利用を推奨することによる、従来型のクラシックウィジェット版のサポートが廃止された(もうすぐ廃止される?)、というお知らせ。

どういう場合に表示されるか?

WordPress Popular Postsのクラシックウィジェット版を使っている場合。

あくまで筆者の環境の場合、WordPress Popular Postsのバージョン 6.1.3 の適用で確認。6.1.1では表示されない。

対処法の例

実務上は対応コストとの兼ね合いもあるので、どれが一番よいとは一概に言えないことに注意。

6.1.1以前を使い続ける

バージョンアップ済みの場合は公式サイトから古いバージョンをzipダウンロード(zipファイルのバージョン表記部分を手打ちで書き換える)して、zipアップロードでバージョンダウンすることができる。

WordPress本体やテーマとの対応兼ね合いで、あえてプラグインをバージョンアップしないというのは実務上ではよくあること。

ブロックウィジェットは新しい機能なので、Wordpressのバージョンが古かったり、テーマがサポートしていない場合も多いので、その場合の選択肢になる。

ブロックウィジェットの機能に切り替える

WordPress本体とテーマがサポートしていれば切り替えるのも一つの方法。

従来型のウィジェットとは設定の仕方が異なるので、設定を解説したページなどを参照のこと。

まぁ、よく言われるけど、長く運用するサイトではWordpressはバージョンアップ対応がとっても大変。

報告は以上。幸運を!

WEB制作

【UI設計】人類がスマホを持つのは右手なのか左手なのかという難題に触れてみる

結論、俺は右利きだけど、スマホは割と左手で持つことが多いよ。

だけど、気分で変わったり、細かい操作する時とか、最近の大きめのスマホの場合は、左手だと落としそうになるから右手で持つことも多いよ。

左手でも右手でも操作しやすいのが大事なんじゃないかな。

スマホを左手で持つ正当な理由

若い人はあまり電話を好まないというからスマホを「電話」としては使う頻度は少ないのかもしれないけど、スマホを受話器と考えた場合、右利きの場合は左手で持たないと電話中にメモを取ったり、落書きを描くことができないからである。

ネット閲覧やアプリの操作にしても、左手でスマホをいじりながら、より繊細な動きがしやすい右手で鼻くそをほじくったり、細かな動きをする羽虫や蛾の類を追い払うことができるメリットもある。

その他、今にも頭上にツララが落ちてきそうな場合に落ちてきたツララをキャッチしたり、暴漢に襲われそうになった時も、利き手が空いている方が咄嗟の対処がしやすいだろう。

生命に直結する事態への対処のために利き手を開けておく。我ながらだが、この理屈は多くの人が納得、賛同できるのではないだろうか?

但し、上がるかどうか確信が持てない危険な株をドキドキしながら購入する時だけは、右手でスマホを冷や汗かきながら操作することが多い。

右手なのか左手なのかはUI設計に関わる大きな問題だ

はっきり言って、他人に迷惑をかけない限りはスマホを右手で操作しようと左手で操作しようと好きにすればよいのである。

しかし、あなたがWebデザイナーやUIデザイナーの子孫だったり、アプリ開発者や、なんたらエンジニアの親戚だった場合は、様々な考察が必要になるだろう。

ほぼほぼ一般人にとってはどうでもいいことだが、ハンバーガーメニューを右上にするか? 左上にするか? というのは、なんたらデザイナー界隈にとっては大きな問題の一つと認識する場合が多い。

だけど感覚的にはハンバーガーメニューは右上にあることが多くね?

大手企業のサイトなどでは感覚的には右上にある確率が高いが、羽虫を追い払ったり生命維持のためにスマホを左手で操作する吾輩にとっては、右上は最もアクセスしにくい場所だ。

右手で鼻くそをほじりながらサイトを閲覧したいユーザーの気持ちに応えるならば、どっちかというと左上が正解なのは言うまでもないだろう。

ちなみに、当サイトは右手派と左手派のどっちにも等しく媚を売るために、真ん中にハンバーガーメニューを設置している。

個人的には左上にあった方がいいような気がするよ

正直、どっちでいいと思うけど、欲を言うとハンバーガーメニューの類は左上にあって欲しいと思う今日この頃なのであった。

というより、本職のエンジニアじゃない人がハンバーガーメニューを出来合いじゃなくてガチで設計しようとすると、トラブルも多いし沼にハマりやすいので注意だ。

決して、金曜日の午後とか、火曜日とかでも調子の悪い日に取り掛かってはいけない。

余談 そもそもハンバーガーメニューがUIとして良くない件

UIデザイナーの末裔なら頭の隅に置いておきたいのは、そもそもハンバーガーメニューはUIとしてレベルの高いものではないということ。

スマホ慣れていない田舎の高齢者とかだと、棒みたいな絵をタップしたらメニューが出てくるなんてわからないのに、某大手白物家電メーカーはハンバーガーメニューを採用しているのは非常にナンセンスという話だ。

バリバリのスマホ世代にしたって、タップしてメニューを選択するという2段階右折を強いられるからストレスだし、サイトやアプリのインターフェースとしては並み以下の存在であることは明らかだろう。

ユーザー検証を行って、きちんとUI設計されているサイトやアプリはハンバーガーメニューではなく、画面の下あたりにアイコンでワンタップでアクセスできるようになっていたりする。