TL;DR

migration 時に気をつけること

  • hexo-migrator-wordpress を修正し、 HTML を無理に markdown に変換しないようにする
  • {{{% raw %}{{{% endraw %} に変換する

お知らせ

Wordpress で書いていた www.nishimiyahara.net から、すべての記事を引っ越しました。

hexo も色々難点はあるけど、そこを理解して付き合っていけば何とかなりそうな気がしてきた。

まあ、そう思えるのは、結果的に記事のインポートが(かなり躓いたけど)うまくいった(少なくとも構築できる状態になった)からだと思う。

元凶は migrator だった

色々見ていくうちに、ソースコードとして書いている部分が妙な markdown になっていることに気づいた。
これは、と思って hexo-migrator-wordpress のソースコードを見ると、 HTML を markdown に変換しているところがあった。

過去記事は無理に markdown にする必要はないので、変換部分を削除して実行してみた。
すると、これまでと違って hexo generate --debug のエラーがわかりやすいものに変わった。

あとは、 {{{% raw %}{{{% endraw %} に変換するくらいで、エラーがなくなった。

結構苦労したけど、結果的にやることがすごく少なくて拍子抜けと言うか。

記号の扱いは、昔から困ることが当然なので、この程度で済んだのなら御の字というか。

URL と時間の扱い

そして問題は時間の扱いに戻った。

これまで色々と考えて時間を扱ってきたけど、移転に際してまた困ることになった。

この辺は諦めて、時差を含めた時間は別のメタ情報として保存するようにして、 date の値は、常に日本時間にすることで解決することにした。

時差を含めた情報は個人的なこだわりではあるけど、記事をインポートしてみると、使っていないメタ情報がたくさんあることに気づいた。

しかも、特に捨てられるわけではないので、それなら時差を含めた時間の情報を持っておいて、ファイルを変換する時に URL の元になる date を生成すれば良い。

インポートする前に書いていた記事は URL が変わってしまうことになるけど、それはそれ。

とりあえず色々とスッキリした。