# WordPressから記事をHugoに大体移植した
Table of Contents
意外と見られていた旧ブログ
ブログをHugoにリニューアルし、WordPressの方はずっと放置していた。
先日ふっと思い立ちこのブログにもアナリティクスを導入した。その時ちらっと見たWordPressのアナリティクスの数字は自分の想像を遥かに絶するものだった。
さすがにこれはもったいないと、お引越しをすることにした。
幸いWordPressブログなのだが、記事はGitで管理していた(使わなかった…)。
これ幸い、引っ越しを始める。
記事一覧の取得
まずは記事一覧の取得を行っていく。
WordPressの拡張機能であるExport All URLsを使い、URLを出力した。
| Post ID | Title | URL | Categories | Tags | Published Date |
|---|---|---|---|---|---|
| 42 | GithubActionを使用してエックスサーバーにデプロイする | https://media.nove-web.com/42/ | Github | Github, Github Action, Wordpress, エックスサーバー, 効率化 | 2021/11/28 16:24 |
こんな感じの一覧が出力された。
次に出力したタイトルをパスパラメータ―に変換していく。
これが本当にしんどいけど、Chat GPTが全部やってくれました。
記事ファイルをxmlに変換する
WordPressの管理画面からxml形式にエクスポートをする。
エクスポートしたファイルをxml-to-markdownというフォルダに格納し、npx wordpress-export-to-markdownを実行する。
? Path to WordPress export file? name.WordPress.2024-06-07.xml? Path to output folder? output? Create year folders? No? Create month folders? No? Create a folder for each post? No? Prefix post folders/files with date? No? Save images attached to posts? Yes? Save images scraped from post body content? Yes? Include custom post types and pages? Noこんな感じに設定すると今までの記事がマークダウン形式に変換される。
このパッケージを作ってくれた人には感謝しかない。
地道に作業していく。
まずはファイル名を先ほど、GPTが作成してくれたパスパラメータ―に変換していく。
これは力作業、時間を浪費するだけの作業。
次にマークダウンの形式をHugoに合わせていく(そのままでも平気だった🤔?)
最後に、最初に作ったエクセルを有効活用し、.htaccessを作成していく。
<VirtualHost *:80> # 環境変数の設定 SetEnvIf Request_URI ".*" Ngx_Cache_NoCacheMode=off SetEnvIf Request_URI ".*" Ngx_Cache_AllCacheMode
# 301リダイレクトの追加 Redirect 301 /42/ https://blog.nove-b.dev/posts/new-name</VirtualHost>これでお引越しが完了した。
リアルタイムも常時、人がいるようになったので、これで完了した。