wordpress export to markdown
Publish date: Sep 12, 2020WordPress の Markdown 化に、以下のツールを使うことにしました。
Node 製の変換ツールです。
wordpress-export-to-markdown
https://github.com/lonekorean/wordpress-export-to-markdown
README.md の通りに進めていきます。
準備
Nodeのバージョン管理ツールをbrewで入れる
$ brew install n
バージョンを指定してNodeをインストール
$ sudo n 12.18.2
wordpress-export-to-markdown をインストール
$ npm install wordpress-export-to-markdown
実行
$ npx wordpress-export-to-markdown --prefix-date=true --input evenarabbitcanunderstand.WordPress.2020-09-12.xml
Starting wizard...
? Path to output folder? (output)
? Path to output folder? output
? Create year folders? (y/N)
? Create year folders? No
? Create month folders? (y/N)
? Create month folders? No
? Create a folder for each post? (Y/n)
? Create a folder for each post? Yes
? Save images attached to posts? (Y/n)
? Save images attached to posts? Yes
? Save images scraped from post body content? (Y/n)
? Save images scraped from post body content? Yes
問題
スクリーンショット画像が [FAILED]
する。
原因
ファイル名にカタカナが入ると [FAILED]
するらしい。
該当箇所に当たりをつけた。
node_modules/wordpress-export-to-markdown/src/writer.js
async function processPayloadsPromise(payloads, loadFunc, config) {
const promises = payloads.map(payload => new Promise((resolve, reject) => {
setTimeout(async () => {
try {
const data = await loadFunc(payload.item, config);
await writeFile(payload.destinationPath, data);
console.log(chalk.green('[OK]') + ' ' + payload.name);
resolve();
} catch (ex) {
console.log(chalk.red('[FAILED]') + ' ' + payload.name + ' ' + chalk.red('(' + ex.toString() + ')'));
reject();
次回
- フォークして git clone してバグ修正する。
- Mac のスクショ画像、デフォルトでファイル名に「スクリーンショット〇〇」と入るので、それも「Screenshots〇〇」などに変更する。