ブログを書き続けていると、あるタイミングで困ることがあります。
それは自分のブログの全体が見えなくなることです。

WordPressの管理画面を開けば記事一覧は見えます。
しかし実際には、次のようなことを確認するのに時間がかかります。

  • このテーマの記事はすでに書いているか
  • 似た記事が増えていないか
  • Search Consoleのクエリに対応する記事はどれか

記事数が増えるほど、ブログの全体像を把握するのが難しくなります。

特に困っていたのが、Search Consoleのデータとの関係です。
Search Consoleでは次のデータを見ることができます。

  • 表示回数
  • CTR
  • 検索クエリ

しかし、そのクエリを受けている記事の内容をすぐに確認できるわけではありません。
数字は見えるのに、次に何をすればよいのか決めにくい状態でした。

そこで今回、WordPressの記事をローカルに同期する仕組みを作り、ブログ運営で実際にどのように役立ったのかを紹介します。

この記事で分かること

  • WordPressの記事をローカルに同期した理由
  • 同期する仕組みの全体構成
  • 同期したことでブログ分析がしやすくなったこと

ブログの記事が増えると全体が見えなくなる

WordPressの管理画面では記事一覧を見ることができます。

しかし、記事数が増えてくると次のような確認が少しずつ大変になります。

  • 似たテーマの記事を書いていないか
  • すでに書いた記事がないか
  • 関連記事をどこにリンクするか

記事の内容を確認する場合、基本的には次のような流れになります。

  • 記事一覧を開く
  • タイトルで探す
  • 記事を開く
  • 内容を確認する

この作業自体は難しくありません。
ただしブログを書き続けていると、この確認を何度も行うことになります。

特にSearch Consoleのクエリを見ながら記事を改善しようとすると、クエリを見る → 該当記事を探す → 記事内容を確認する、という作業が増えていきます。

このような状況から、記事情報をローカルに持っておけないかと考えるようになりました。

CodexでWordPress記事同期の仕組みを作った

そこで考えたのが、WordPressの記事をローカルに持ってくる仕組みです。

今回は自分で一から作ったわけではありません。
Codexに相談しながら作りました。

やったことは次の通りです。

  • WordPress REST APIから記事を取得する
  • 記事一覧をCSVとして保存する
  • 記事本文をローカルに保存する

スクリプトの実装から、繰り返し使える形にするところまで、Codexに相談しながら作っています。
その結果、WordPressの記事をローカルに同期できるようになりました。
実際にCodexに指示して、記事を同期した操作は次の通りです。

この仕組みを作ったことで、WordPressの管理画面だけでなく、ローカルでもブログの情報を確認できるようになりました。

WordPress記事をローカルに同期する仕組み

細かい技術の説明は省きますが、構成は次のようになっています。

content/
├─ scripts/
│  └─ wp_export_articles.py
│     WordPress REST APIから記事を取得するスクリプト
│
├─ blog/
│  ├─ wp_content_index.csv
│  │  WordPressの記事一覧をまとめたCSV
│  │  記事タイトル・URL・カテゴリなどを一覧で確認できる
│  │
│  └─ bodies/
│     ├─ html/
│     │  ├─ post/
│     │  │  投稿記事の本文HTML
│     │  │
│     │  └─ page/
│     │     固定ページの本文HTML
│     │
│     └─ markdown/
│        ├─ post/
│        │  投稿記事の本文Markdown
│        │
│        └─ page/
│           固定ページの本文Markdown

この仕組みでは、次の情報をローカルに保存しています。

  • 記事一覧CSV
  • 記事本文HTML
  • 記事本文Markdown

記事の更新があった場合は、更新された記事だけ同期される仕組みになっています。
そのため、毎回すべての記事を取得する必要はありません。

仕組みを作ってブログ運営が楽になった

WordPressの記事をローカルに同期する仕組みを作ったことで、ブログ運営がやりやすくなりました。
特に効果を感じたのは次の点です。

  • 既存記事の棚卸しがしやすくなった
  • Search Consoleの分析を行動につなげやすくなった
  • AIに記事分析を相談しやすくなった

既存記事の棚卸しがしやすくなった

記事をローカルに持つことで、まず便利になったのが既存記事の棚卸しです。

これまでは、WordPressの管理画面を開いて記事を確認していました。
記事を探すときは、タイトルを見たり、カテゴリをたどったりして確認する必要があります。

しかし記事一覧CSVがあることで、ブログの内容を一覧で確認できるようになりました。

例えば次のようなことが分かります。

  • どんなテーマの記事が多いか
  • カテゴリの傾向
  • タグの傾向

さらに便利なのが、記事を書く前の確認です。

ブログを書いていると、次のようなことを確認する場面がよくあります。

  • 似た記事がないか
  • 既存記事に追記できないか
  • 関連記事をどこにリンクするか

これまではWordPress管理画面で記事を探して確認していました。
しかしローカルに記事一覧と本文があることで、この確認がかなり楽になりました。

記事を書く前に既存記事を確認する時間が短くなり、記事作成の流れもスムーズになりました。

Search Consoleの分析を行動につなげやすくなった

この仕組みを作って一番効果を感じたのが、Search Consoleとの分析です。
Search Consoleでは、次のようなデータを見ることができます。

  • 表示回数
  • CTR
  • 検索クエリ

これまでもSearch Consoleは確認していました。
しかし、数字を見ても次に何をすればよいのか判断しにくい場面がありました。

例えば次のようなケースです。

  • 表示回数は多い
  • しかしCTRが低い

この場合、記事を改善したほうがよい可能性があります。
ただし、記事の内容を確認するにはWordPressを開いて記事を探す必要があります。

今回の仕組みでは、記事一覧CSVと本文Markdownをローカルで確認できます。
そのため、Search Consoleのデータを見ながら次の流れで記事を確認できるようになりました。

  • Search Consoleでクエリを確認する
  • 該当記事を記事一覧CSVで探す
  • 本文Markdownを確認する

この流れで記事内容を確認できるため、次のような判断がしやすくなりました。

  • タイトルを改善する
  • 導入文を見直す
  • 見出し構成を調整する

逆にSearch Consoleのクエリを見ていると、次のようなことに気づく場合もあります。

  • 検索されている
  • しかし専用記事がない

その場合は、新しい記事を書く候補になります。
このようにSearch Consoleの数字を見るだけでなく、次にやる行動につなげやすくなりました。

AIに記事分析を相談しやすくなった

もう一つ良かった点があります。
それはAIに記事分析を相談しやすくなったことです。

WordPressの管理画面だけで記事を管理している場合、記事に関する情報がいくつかの場所に分かれています。

例えば次のような状態になります。

  • 記事本文はWordPress
  • Search ConsoleのデータはSearch Console
  • 下書きやメモはローカル

この状態では、AIに分析を依頼するときに情報をまとめる必要があります。
その準備に手間がかかることもありました。

今回の仕組みでは、記事に関する情報をローカルで扱えるようになりました。
そのため、次のようなデータをまとめてAIに渡すことができます。

  • 記事一覧CSV
  • 記事本文Markdown
  • Search Consoleのデータ

こうした情報をまとめて渡せるようになったことで、次のような相談がしやすくなりました。

  • タイトル改善の提案
  • 記事の重複チェック
  • 内部リンクの候補
  • 新規記事のアイデア

AIを使う場合でも、材料となる情報が整理されていると分析しやすくなります。
今回の仕組みを作ったことで、記事データをAIに渡しやすくなりました。

まとめ

WordPressの記事をローカルに同期する仕組みを作ったことで、ブログ運営がやりやすくなりました。

特に効果を感じたのは次の3つです。

  • 既存記事の棚卸しがしやすくなった
  • Search Consoleの分析を行動につなげやすくなった
  • AIに記事分析を相談しやすくなった

ブログは記事を書くことも大事ですが、既存記事を整理して分析することも重要です。
記事数が増えてきたときほど、こうした仕組みが役立つと感じました。

最後まで読んでいただき、ありがとうございました。