このブログの更新は終了しています。
よろしければ新しいブログの方もご覧ください。
毎年一時帰国してたんですが、今年はとてもできる状況じゃなかったですね。年末年始もまだ無理ですが、来年の夏までには一度帰りたいですねぇ。
昨年の夏に帰国した際に、金沢に行ってきました。その前に行ったのはシンガポールに来る前年の2012年でしたから、7年ぶりでした。もっと早くにその時の写真をあげておくべきでしたが、ブログ更新が低調だった間に1年以上が経ってしまいました。
ちなみに、2012年に行った時の写真はこちら(金沢に行ってきました (1)、金沢に行ってきました (2))。この時のカメラはE-M5でしたね。
宿泊先の近くで咲いていた紫陽花。シンガポールでは見ることができないのもあり、とても美しく感じました。
もちろん兼六園には行ってきました。2012年とは季節も時間帯も天候も違うのですが、写真を比べると2012年にE-M5で撮った写真の方が色が濃くこってりとしていましたね。でもより自然なのは今回のX-H1で撮った写真の方かな。
2012年同様に東茶屋街にも行ってきました。X-H1の写真はやはり色の具合がいいです。建物の木の質感、金箔の色合い共にいい雰囲気です。燕の赤ちゃんも可愛かったです。
昨日のパーマリンク問題ですが、応急処置はしたもののやっぱりスッキリしないので、解決策を考えました。
Step 1: パーマリンク設定を%post_name%
を用いたものにする
これまでのフォーマットに近いプリセットの2つ目「日付と投稿名」を使います。すなわち
/%year%/%monthnum%/%day%/%post_name%/
と設定します。
Step 2: 既存の記事全てについて、スラッグに投稿日時の時分秒の6桁の数字を入力する
これにより、%post_name%
と%hour%%minute%%second%
の出力結果が同じになりますので、Step 1のパーマリンク設定でもこれまでと同じURLにすることができました。
既存の記事についてはこれで完了ですが、今後追加する記事には問題があります。投稿スラッグは自分で入力しない場合にはタイトルが自動的に入力されてしまうからです。記事を書いている時点では投稿日時の時分秒を正確に知ることは出来ませんから、URLのフォーマットを既存の記事と合わせるためには、適当な6桁の数字を手入力しなければなりません。それはちょっと面倒です。
なので、投稿時に自動で6桁の数字をスラッグに入力してくれるシンプルなプラグインを作りました。数字としては%post_id%
を用いて、6桁に整形します。これでスラッグの一意性も確保されるはずです。
Step 3: 下記のコードを用いたプラグインを作成し、インストール・有効化する
function postid_as_slug( $slug, $post_ID, $post_status, $post_type ) {
if ( $post_type == 'post' ) {
$slug = sprintf( "%06d", $post_ID );
}
return $slug;
}
add_filter( 'wp_unique_post_slug', 'postid_as_slug', 10, 4 );
このサイトの場合、実際には最初の1桁を3に固定し、残りの5桁に%post_id%
を使うようにしてあります。既存の記事に使われている時分秒と確実に違う数字にしないといけないので。
当然ながらStep 2が一番時間のかかる作業でした。幸い今日は日曜日でしたので、1日かけてなんとか終わらせました。SQLを書けばもっと短時間で終わらせられたのでしょうが、間違ったSQLコマンドを流して予期しない結果になると大変なので全て手作業でやりました。もしかしたらタイプミスした投稿もあるかもしれませんが、少なくともブログ内でリンクされている記事は大丈夫のはずです。外部からリンクされた記事にミスがあったらごめんなさい。
WordPressの管理画面ではなくデータベース内のpost_nameの値を直接変更したので同じ時分秒を持つ投稿があったとしても正しく設定することができましたが(管理画面から編集すると既存のものと同じスラッグを設定しようとすると末尾に「-1」などの文字が追加されてしまう)、もしかしたらそれに伴う動作の不具合があるかもしれません。見つけたらその時に修正することにします。
このブログの将来のことを考えるついでに、久しぶりにテーマでもいじってみようかと思ってみたら、表示に不具合があることを発見してしまいました。
開設以来、個別記事へのパーマリンクは次のように設定しておりました。
/%year%/%monthnum%/%day%/%hour%%minute%%second%/
URLの一意性を確保するには、%post_name%
か%post_id%
を使うのが定石です。しかし、%post_name%
だとURLに日本語(もしくはURLエンコードされた文字列)が含まれるのが嫌で、また%post_id%
は正しい連番にならないし桁数も統一できないのが嫌で、これらを使わずにユニークなURLを得るため年月日に加えて時分秒を用いた上記のようなパーマリンクに設定した次第です。これまで何年もこの設定で問題なく使っておりました。
今日気づいたのは、これまで個別記事に表示されていた前後の記事へのリンクやコメントフォームなどが一切表示されなくなっていることに気づきました。テーマの問題かと思いましたが、別のテーマを適用してもやはり表示されません。さらに調べてみると、どうやら個別記事ではなくアーカイブのテンプレートが適用されてしまっているようでした。
しばらくブログから離れていいたのでどのタイミングでこれが起こったのかは不明ですが、どこかのアップグレードでURLに日付と時刻しか含まれない場合はアーカイブと解釈されるようになったと思われます。実際パーマリンク設定を%post_name%
か%post_id%
が含まれるように変更すると問題なく個別記事として表示されました。
もちろんパーマリンク設定を変更すれば解決するわけですが、そうするとブログ内の別の記事からの参照、検索エンジンや他のサイトからのリンクは以前のURLのままなので「記事が見つかりません」となってしまいます。ブログ内でのリンクは手作業で書き換えればいいですが、検索エンジンの方はインデックスが更新されるのを待つしかありませんし、他のサイトからのリンクはどうしようもありません。
妥協策として、パーマリンクを
/%year%/%monthnum%/%day%/%hour%%minute%%second%/%post_id%/
としています。これで、以前のURLでアクセスされた場合でも、アーカイブのテンプレートで表示された状態(前後記事へのリンクとコメントが表示されない)にはなってしまいますが、とりあえず該当記事の内容は表示されます。ブログ内のリンクはそのうち書き換えます。
今後もブログを続けていく場合は、サーバー移転を機にまた新しいブログを立ち上げ、こちらのブログは引っ越しだけして閲覧のみ(更新なし)で放置する方向になりそうです。1000件以上の記事に個別にリダイレクトを設定するのも大変ですからね。
このブログの今後についてです。つい先ほど私にとって残念なお知らせが飛び込んできました。
「COREPRESS Cloud by GMO」サービス終了のお知らせ
4年ほど前からこちらのサービスを利用させていただいてこのブログを運用してきました(VPSからCloudへ)。それまでに使っていたレンタルサーバーやVPSと比べるとブログ保守の手間が大幅に簡略化され、満足して使っていました。自動でバックアップは取ってもらえますし、テストサイトの作成・本番環境との入れ替えが簡単に行えるのがありがたかったです。一部のプラグインが使えなかったり、WordPress本体のアップデートが遅い(自分ではアップデートできない)など制限はありましたが、それを上回るメリットがありました。
あと5ヶ月ほどでサービスが終了してしまうため、今後の方針を決めなくてはなりません。ここ半年はブログ更新をしてなかったですし、正直なところ以前よりもブログに対する意欲は下がっており、このまま終了してしまってもいいのかもしれないとは思っています。でも、中断期間はあるものの、10年以上にわたって続けてきましたし、過去の投稿や写真が消えてしまうのはもったいない。
方向性としては、
の3パターンかなと思います。
もう少し考えて、遅くとも年明けぐらいまでには報告できるようにしたいと思います。
半年のご無沙汰でございます。ネタもなければ記事を書く気力もなく、ずっと放置しておりました。
シンガポールでのCovid-19の状況はかなり優秀です。1日の感染者数はかなり少なく、市中感染は多くても1桁で、外国人労働者の寮での感染も今は少ないです。代わりに増えてきているのは海外からの輸入症例ですが、それもせいぜい1桁です。日本よりもかなり良い状況だと思うのですが、市民生活にかけられる制限はいまだに日本よりも厳しいです。マスクの着用は厳しく監視されており、違反すれば罰金です。集まれる人数にも制限があり、これも罰則付き。私たち外国人は下手をするとビザ剥奪で母国に強制送還になる可能性もあるので、気をつけて守らなくてはなりません。
職場への復帰は可能ですが、私の仕事は家からでも問題なくできるため、今でも在宅勤務を続けています。もう少ししたら週の半分ぐらいは出社することになりそうです。
というわけで、趣味の方もぼちぼち再開していこうかと思います。海外旅行もできず、外も自由に出歩けない状態だったのでカメラも半年以上防湿庫で眠っておりました。久しぶりに出してみたら当然バッテリーが空になって設定もリセットされていました・・・。写真を撮りに出かけるのもまだ難しいですが、まずは室内でのブツ撮りから再開ですかね。その前に、まずは半年以上前に撮影した写真の取り込みからです(汗)。Capture Oneのアップグレードもやってないので、そちらが先ですが。色々とやらなければならないことがたくさんあるので、すぐにまた以前のペースでブログ再開とはいきませんが、年内にはきちんと再開できるように頑張ろうと思います。
今回はこんな感じの近況報告のみで。