この場所(mikimarulog.me)にブログを書きはじめる以前に、古いブログがあった。一般的な内容と、食べ物関連の内容と。それらはつい先日まで、新しくコメントなどができないように応急処置をした状態でそのまま残していたのだが(ご覧になりたい方は、「ご案内」ページの一番下にリンクしているのでどうぞ)、数日前にロリポップのプランをアップデートした際、内容が古すぎてうまく動作しなくなっていた。
少し、悩んだ。
応急処置を施していたとはいえ、残しておいたのは危険だったのだから(脆弱性を突いて誰かが悪さをしないともかぎらない)、これを機に消してしまうのが、本来のすじだろう。
だが、さみしかった。消したらもう自分はそれらを忘れる。ネット上にあれば自分だけでなく誰かが読むかもしれない。それに、まだ「より細かく」処置をすれば、危なくない状態にできるはずだ。
数時間ほど悩んでから、やればできるとわかっている努力を惜しまなければ残しておけるのだと、作業にとりかかった。
手順としては:
内部にデッドリンクがたくさんあることはわかっているのだが、そうした当時の記録はそのままに、ただ全体を安全な形で残しさえすればいいという判断にした。さもないと中味まですべてチェックせねばならなくなり、きりがないからだ。
一般のブログのほうは、HTMLが中心で、テキストエディタ(BBEdit)でのマルチファイル置換でほとんど作業を終えることができた。
だが食べ物ブログのほうは、開始したのが少し遅かったのか、内容がやや高度になっていて、勝手が違った。HTMLで本文を静的に並べているほか、それらを分類や検索しやすくするために.phpファイルが併用されていた。当時は便利に使っていたのだが、頭が痛い。
そうした.phpを最終的にはすべて消して、HTMLだけ表示できるようにするのが目標だったが、そのためには数百以上もあるHTMLファイルから、ページ内にちりばめられた便利な記述(.phpファイルを呼び出すメニュー)を、すべて消さなければならない。
そのとき念頭にあったのは、こういった図。この画像の例でいえば、左側下の枠を消すようなイメージである。
(と思ったら、なぜかここでパーミッションエラーになり、事例の画像が添付できないため、明日画像だけまた貼りつけにくる予定…翌日追記:画像が貼れた)
はたしてそんなことが簡単にできるのかと思ったのだが、案ずるより産むが易しだった。
消したいブロックの最初と最後に必ず現れるタグを調べ、そのタグとタグのあいだに正規表現で
.*[\s\S]*?
…を記入して、マルチファイル置換をおこなうのみ。置換対象は改行にしておけば、ブロック単位で削除できる。わたしはBBEditを使用したが、もしかするとmiでも、できそうな気がする。
(この正規表現らしきもので、わたしはうまくいったが、もしかしたら短くできるかもしれないし、たまたま動いたからといって正式なものではないのかもしれず、参考までに書いておくことにする)
この作業は数百〜数千の、フォルダ内にあるファイルを瞬時に置換してしまうので、作業にはいる前に同じフォルダをたくさんコピーして、いつでもフォルダをリネームして同じ作業がやりなおしできるようにしておく必要がある。
それにしても、この記事を書きはじめて気づいてしまった「画像が載せられない」件は、困ったものだ。これを調べるのにまた時間がかかりそうだ。
=== 翌日編集 ===
なぜかWordPressの「設定/メディア」の欄で、アップロードフォルダのパスが現在と異なっていたことが判明。ロリポップのバージョンアップの際に、フルパスが変わったのか?
というわけで、無事に終了。