背景
WordPressをHugoにするにはどうすればいいかを調べました。
途中だけど、メモとして残します。
手順
エクスポートする
WordPressからエクスポートする
markdownへの変換(追記が必要)
ページバンドルにするには、以下が良さそう。
mnezerka/wp2hugo: Transfer data from Wordpress to Hugo
ただ、そのまま使用すると、htmlで書いていてもmarkdownに強引に変換される。
また、マルチバイトのタイトル等はURL用のエンコードで定義されるため、カスタマイズが必要。
画像のダウンロード(動くものは書いた)
以下のようにまずは動くものをgolangで書きました。
- 出力されたmarkdownファイルをインプットにして動く
- 画像ファイルを同じフォルダにダウンロードする
- ダウンロードしたら、リンクのURLを書き換える
内部リンクチェック
以下を使用できる。
raviqqe/muffet: Fast website link checker in Go
hugoのプレビューだとうまく動かないので、publicに吐き出し、nginxを使った。
実際に使用したのは、以下のコマンド.
nginxで起動
docker run --rm --name webtest -v $PWD:/usr/share/nginx/html:ro -p 8080:80 nginx:latest
リンクチェック
sudo /home/yamadatt/go/bin/muffet http://192.168.1.49:8080/ -e "192.168.1.49:8081" -e "https"
リンクチェックの出力結果
http://192.168.1.49:8080/posts/2022/ikihayoiyoikaeriha/
id ### not found http://192.168.1.49:8080/posts/2022/ikihayoiyoikaeriha/#%23%23
http://192.168.1.49:8080/posts/2022/sorehatotuzenhajimatta/
id ### not found http://192.168.1.49:8080/posts/2022/sorehatotuzenhajimatta/#%23%23
http://192.168.1.49:8080/posts/2022/waraenai/
id ### not found http://192.168.1.49:8080/posts/2022/waraenai/#%23%23
http://192.168.1.49:8080/
404 http://192.168.1.49:8080/about
dial tcp4 192.168.1.49:80: connect: connection refused (following redirect http://192.168.1.49/posts/) http://192.168.1.49:8080/posts
http://192.168.1.49:8080/posts/2019/2019_11_13_/
404 (following redirect https://www.nichigan.or.jp/404.html) http://www.nichigan.or.jp/public/disease/momaku_karei.jsp