活用例:REST API1を使ってWordPressへ自動ポスト

活用例:REST API を使ってWordPressへ自動ポスト

概要

ブログやWebサイトを作るWebのシステム(CMS2)で現在一番シェアがある「WordPress」には、外部のアプリケーションやWebサービスなどから直接操作する仕組みとして“WordPress REST API3”(WP REST API)が用意されています。

このAPIを利用したプログラムを作成することで、Word文書(docx形式)から『Docx to HTML』でHTMLに変換し、そのままWordPressへ投稿して公開することができるようになります。

変換→投稿イメージ

変換→投稿イメージ

ご注意

『HTML on Word』はデスクトップ製品のため、サーバーでの利用や他のプログラムからの実行はできません。ここでは『HTML on Word』とほぼ同じ機能でサーバーでの利用や他のプログラムからの実行ができる製品『Docx to HTML』を使用した活用例となります。

処理の流れ

以下は「WordPress REST API連携用プログラム」(アンテナハウス開発)を実行し、投稿→公開した場合のプロセスのイメージです。

処理の流れ

処理の流れ

このシステムでできること

今回弊社でテスト開発したプログラムでは次のことが可能です。

  • 指定したディレクトリ内のWord文書を『Docx to HTML』でHTMLに変換
  • 変換したHTMLと出力したファイル(画像、CSS)をWordPress REST APIを使ってWordPressに接続し、カスタム投稿タイプへ投稿
  • 同じ投稿がすでにある場合はHASH値を比較。値が異なる場合は更新
  • 投稿がすでにあり、ローカル(クライアント)にHTMLがない場合は、WordPressの投稿のステータスを「下書き」に変更
  • 各HTMLのファイル名からWordPressのスラッグ名をそれぞれに設定
  • 文書内のリンクをWordPress内で正しくリンクする様に置き換え
  • 目次のリンクをWordPress内で正しくリンクするように置き換え。この目次を利用することで複数ページに分割出力した場合でも一つのコンテンツの塊として取り扱いが可能
  • WordPressプラグイン(弊社開発)で目次生成も可能
  • 投稿した文書のステータスを設定
    • 公開済み:投稿して即時に公開されます。WordPressの管理画面にログインは不要です
    • 下書き: 投稿時は公開されないので、WordPressの管理画面にログインして確認後に公開することができます
  • 実行時のログを出力

ヒント

「このシステムでできること」は今回テスト開発したプログラムの機能です。プログラムの機能を充実させたりWordPress REST APIを活用することで、さらにいろいろな機能を実現できます。

システム構成

今回弊社でテストしたシステムの構成は以下のとおりです。

システム構成

システム構成

実際に実行してみる

実際に弊社でテスト開発したプログラムを実行して、Word文書(クイックガイド)をWordPressの投稿として公開した結果です。

なお、テスト環境(WordPress)にはカスタム投稿タイプのプラグインの導入と、必要な設定、WP REST APIにアクセスするための設定などをしています。

プログラムの実行

プログラムの実行

コマンドラインからオプションを追加してプログラムを実行します。

docxファイルをDocx to HTMLでHTMLに変換し、出力したファイル(HTML、画像、CSS)をWordPressにアップロードします。この時、リンクの置き換えやステータスの設定、hash値の比較、その他必要な情報の送信が同時に行われます。

プログラムの実行完了

プログラムの実行完了

処理が完了しました。

WordPressの投稿状態(実行前)

WordPressの投稿状態(実行前)

WordPress管理画面の投稿状態(実行後)

WordPress管理画面の投稿状態(実行後)

WordPressのカスタム投稿タイプに投稿されたので、管理画面にログインして状態を確認します。

ステータスが「公開済み」になっています。

※投稿時のステータスを「公開済み」(publish)に指定した場合、即時公開されるので、管理画面にアクセスして公開作業をする必要はありません。

WordPress管理画面の投稿状態(ステータス:下書き)

WordPress管理画面の投稿状態(ステータス:下書き)

「下書き」(draft)を指定して投稿した場合は、投稿内容を確認後に管理画面を使って「公開済み」に変更します。

公開されたページ(実行前)

公開されたページ(実行前)

公開されたページ(実行後)

公開されたページ(実行後)

公開されたページを確認します。

画像の表示

画像の表示

画像が正しくリンクされ表示されています。

目次でページ移動

目次でページ移動

目次や「次へ」リンクを使ってページを移動でき、一つのマニュアルコンテンツとして利用できます。

利用用途の例

『Docx to HTML』とWordPress REST APIを使うことで、Word文書から簡単にWordPressに公開することができ、様々な用途でご利用いただけます。

  • Wordで製品マニュアルを作ってWordPressでWebマニュアル、Webヘルプとして公開
  • Wordで業務マニュアルや手順書を作って、アクセス制限をしたWordPressで社内のナレッジとして公開
  • その他、Wordで原稿を作って、製品ページやコラムなどとして公開

使用したプログラムについて

今回テスト開発したプログラムは、製品活用のヒントにしていただくためにテスト開発したものとなります。製品として提供するものではありませんが、ご意見・ご要望などがありましたら参考にさせていただきたいと思いますので、次の宛先までご連絡いただければ幸いです。

電子メール:sis@antenna.co.jp

ヒント

このページの本文箇所はWord文書で作成して『HTML on Word』でHTMLに変換したソースコードを使用しています。