Program, Wordpress

PHP7.2にして、Wordpressを動かして見ると、

count(): Parameter must be an array or an object that implements Countable in …(ファイルパス)/wp-includes/post-template.php on line 284

なワーニングメッセージが。

調べてみるとPHP7.2 になって count関数 が変わった模様。
PHP 公式マニュアル

バージョン 説明
7.2.0 count() will now yield a warning on invalid countable types passed to the array_or_countable parameter.

引数が配列かカウントできるオブジェクトじゃないとワーニングを出しますよー。
ってことになったらしい。

で、件の post-template.php では

if ( $page > count( $pages ) ) // if the requested page doesn't exist
	$page = count( $pages ); // give them the highest numbered page that DOES exist

と $pages がどんなオブジェクトがわからないまま、count関数の引数に使われているのでワーニングが出た模様。

$pages が空(NULL)の場合にワーニングが出るので、count関数を使う前に$pagesが空かどうかのチェックを入れればOK。
空の場合は0を入れてあげます。

if ( ! empty( $pages )) {
    if ( $page > count( $pages ) ) // if the requested page doesn't exist
    	$page = count( $pages ); // give them the highest numbered page that DOES exist
} else {
    $page = 0;
}

コンピュータプログラムの世界では 空(NULL) = 0 かどうかか環境依存だったりするので、ややこしいですね。



ひとまず該当箇所を修正して、ファイルを上書きすればワーニングは出なくなります。

Google / Android, ハードウェア


auの前身IDOの頃からずっと契約し続けていましたが、数ヶ月前に MNPでauから離れました。

長期契約のメリットが無いとか、料金が高いとか、使いたいと思う端末が無いとか、いろいろな複合的な不満が溜まっていて離れました。

オペレータのお姉さん(?)には18年くらい利用している云々、散々引き止められましたが、決意は固く、「いらない」「結構です」と断りまくってMNP番号を取得しました。

移動先は大手キャリアではなく、ネット回線でも利用している IIJ さんのみふぉん。
[ IIJmio ]

端末は何にしようかいろいろ悩みましたが、SIMフリーなので、いつでも本命に変えられるということで最初は安価な端末
[ SHARP AQUOS SH-M05 ]
にしました。

通話をする分にはなんの問題もないですし、モバイルSuicaもきちんと使える端末を選びましたし、今の所なんの不都合もありません。
唯一キャリアのメールアドレスが使えないことですが、そもそもキャリアメールは極々一部でしか利用していなかったので、それらを通常利用のメールアドレスに変更することで支障なく利用できてます。

SIMフリー環境になったことで、今度出るGoogle 製の Pixel3 は気になるところですが、安価とはいえ端末を替えてまだ数ヶ月なので、乗り換えるかどうか悩みどころ。



正直スマホより、近日発表されるという噂の新しいiPadのほうが気になっていますw

PlayStation


プレステミニとも言える、プレイステーションクラシックが 2018年 12月3日 に発売されます。

12月3日といえば、初代プレイステーションの発売日。
シャッターを叩きながら「1!2!3!! 1!2!3!!」と叫んでいるCMを思い出します。

20タイトルが収録ということで、現在判明しているのは
・リッジレーサー TYPE4
・ジャンピングフラッシュ
・ワイルドアームズ
・鉄拳3
・ファイナルファンタジー 7
の5タイトル。

残りの15タイトルはなんだろう・・気になるなぁ。
個人的に入ってたらうれしいのは、
・グラディウス外伝
・R-TYPE Δ
・スナッチャー
・あすか120%
・アクアノートの休日
・サガ フロンティア
・キングスフィールド
・ベルトルガー9
・久遠の絆
・やるドラシリーズ
・アークザラッド
・パラッパラッパー / ウンジャマラミー
・海腹川背・旬
・リンダキューブ
・ナムコミュージアムシリーズ
・クーロンズゲート
・エースコンバット
あたりかなー。

いくつか入ってたらうれしいな。

Webサービス, Wordpress

昨今、Webサイトの常時SSL化は必須の流れになってきています。
その流れに沿って自分の管理しているサイトもSSL化していますが、wpXサーバーでのWordpressサイトの独自SSL化でハマった箇所があったのでメモ。

wpXでの独自SSL化は管理画面のメニューにもあり、マニュアルもあるので大半は流れに沿っていけば問題ないかと思います。
[ 独自SSL設定 | wpXクラウド – WordPress専用のクラウドサービス ]

その中でハマったのが、マニュアルに沿って一通り設定が完了し、サイト自体もSSL化がされた鍵マークがついたので訪問者が閲覧する分には問題ありません。

が、Wordpressの管理画面内、一般設定のWordpressアドレスとサイトアドレスが http:// のままなのです。
直接編集しようにもグレーアウトされ入力は不可となっています。
一応、phpMyAdmin でデータベース内のデータを確認してみると、こちらは optionテーブル内の home と siteurl はきちんとhttpsに変わっています。
wpXのSSL化補助機能を使った結果できちんと反映されています。
が、WPの管理画面では反映されていない。なぜ?why?

いろいろ調べてみるとwp-config のファイル内で siteurl や home が定義されていると管理画面内ではグレーアウトするようです。

なるほど。wp-config で定義されている可能性があるな。
しかしwpX サーバーへFTPアクセスできるフォルダは wp-content フォルダ。 wp-config があるのはその一つ上のフォルダ。アクセスできんじゃないか!!
と思ったが、ちゃんと解決策もあるようで、wpXのFTP接続設定のオプションで接続先フォルダを変更できるものがあったようだ。

FTPオプションを変更して、wp-config にアクセスして(これもそのままじゃ権限の関係で編集できないので、アクセス権の変更が必要です)、案の定 home と siteurl が定義されていたので https に変更して、ようやくひと段落です。

原因が分かればさくっと解決できたのだが、何事もその原因追求に時間と手間がかかるのよねー。

そもそもSSL化補助機能で wp-config の変更もやってくれればよかったのにね。

映像コンテンツ, 音楽

ヨルナイトで知った駒形さんのデビューシングルが発売です。

とにかく歌声が綺麗で上手い。
今後もどんどんいろいろな楽曲が聞きたいアーティストです。



そういえば駒形さんがヨナヨナマンスリーからもう1年以上経つのね。早いもんだ。
今週木曜のゲストで登場するので鷲崎さんとどんなトークをするのか楽しみです。