DiscourseでHTMLをMarkdownに変換:投稿コンテンツ全体を公開

WordPress に知識ベースの投稿タイプがあり、これらすべての投稿を Discourse に移行して、Discourse Docs とフォーラム機能と併用したいと考えています。

最も簡単な方法は、WP Discourse を使って自動的に Discourse にトピックを作成することだと思われます。しかし、そうするとトピックの内容がすべて HTML になってしまい、将来的な編集が非常に難しくなってしまいます。

プラグインで HTML をすべて Markdown に変換することは可能でしょうか?それとも、より良い方法があるでしょうか?

関連する質問ですが、WP の投稿に含まれる画像は、WordPress サイト上のファイルへのリンクとして作成されます。投稿とメディアライブラリ内のファイルを削除すると、リンクが壊れてしまいます。画像を Discourse に直接挿入されたかのように完全にインポートすることは可能でしょうか?

最後に、すでに存在する投稿を同期または公開するための自動化メカニズムはありますか?一つ一つ手動で開くのは避けたいです。

(「強制公開」がオンになっている場合、すべてをまとめて選択し、一括編集で投稿ステータスを「公開」に変更すれば、実際には何も変化しないものの同期がトリガーされることに気づきました。)

「いいね!」 2

WP Discourse プラグインはデータ移行を処理するように設計されていません。ご指摘の HTML から Markdown への変換を含む、さまざまな問題が発生します。

これはバックエンドでのデータ移行を通じて行う必要があります。Discourse.org でホスティングされている場合は、ホスティングパッケージの一部として対応可能です。

セルフホストの場合は、ご希望であればご自身で試すこともできます。Discourse には、すぐに使える移行スクリプトがいくつか用意されています。その方法を選択される場合、サポートが必要であれば Dev チャンネルに投稿してください。アドバイスを提供します。

または、Marketplace で誰かを雇って代行してもらうこともできます。

「いいね!」 1

迅速なご返信、誠にありがとうございます!

なるほど、理にかなっていますね。WordPress の移行スクリプトについて詳しく知るため、Dev のスレッドに投稿させていただきます。

「いいね!」 1

今後の参考のために、私が最終的に採用したのは半自動のプロセスでした。

投稿(約120件)を一つずつ開き、Discourse に公開した後、この Chrome 拡張機能を使って内容を Markdown 形式に変換しました。

MarkDownload - Markdown Web Clipper - Chrome ウェブストア (google.com)

その後、その Markdown 出力をコピーし、Discourse のトピックを編集して抜粋部分を Markdown に置き換えました。Markdown 設定でいくつか変更を加える必要がありましたが、コードブロックの一部と内部リンクの URL 更新を除けば、完璧に動作しました。また、すべての画像リンクが WordPress のメディアライブラリを指しているため、メディアファイルはそちらに保持しておく必要があります。

この方法が実際に機能したのは、投稿がクラシックエディターで作成されていたためです。ブロックエディターに変換すると、Markdown 出力の品質が大幅に低下しました。ただし、フロントエンドからコピーすることもできたかもしれませんが、編集画面から直接コピーした方が品質は優れていました。

「いいね!」 1

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.