WordPressの記事メンテナンスをClaudeに丸ごと任せたら、80件の関連記事が一気に整った話
この記事でわかること
- 何が問題だったのか
- Claudeがやったこと
- Step 1|全記事をスキャンしてパターン分類
- Step 2|`wp_maintenance.py` を作成・実行
- Step 3|Obsidian ↔ WordPress 同期
- フロー化した
「WordPressに投稿した記事、リンクが入ってないものがあるから直しておいて」
そのひと言から始まった今回の作業。Claudeに頼んだら、思いのほか一気に片付いた。
何が問題だったのか
casio-pgs.com に公開している記事を確認したところ、大きく2つの問題があった。
- 関連記事がプレーンテキスト:「## 関連記事」セクションはあるのに、タイトルがリンクになっていない記事が複数あった。
Obsidianリンク形式で書いたものが変換されずにそのまま残っていたケース - 関連記事セクション自体がない:古めの記事を中心に、関連記事へのリンクがまったく存在しない記事が80件以上あった
これを手作業で直すのは非現実的だったので、Claudeに丸ごと任せることにした。
Claudeがやったこと
Step 1|全記事をスキャンしてパターン分類
まずWordPress REST APIで全170件の記事を取得し、それぞれのコンテンツを解析。
- パターンA:関連記事セクションあり、リンクなし → タイトルをURLにマッチさせてリンク化
- パターンB:関連記事セクション自体なし → タグ・カテゴリの重なりで関連記事を自動選定して追加
Step 2|wp_maintenance.py を作成・実行
Pythonスクリプトを~/obsidian-to-wp/wp_maintenance.pyとして作成。ポイントはファジーマッチ。
記事内のプレーンテキスト(例:「Raspberry PiにClaude Codeをインストールする方法」)を全記事タイトルと照合し、単語オーバーラップで最も近いURLを自動で探し出す仕組みになっている。
リンク化: 4件 / 関連記事追加: 80件 / スキップ: 4件
スキャンから更新まで約10秒で完了した。
Step 3|Obsidian ↔ WordPress 同期
続いてwp_to_obsidian.pyでWordPress → Obsidianへの逆同期を実行。今回の修正内容がObsidianにも反映され、8件の新規ファイルが取り込まれた。
フロー化した
毎回コマンドを2つ叩くのは面倒なので、1コマンドでまとめて実行できるシェルスクリプトも作成。
bash ~/obsidian-to-wp/wp_maintenance_flow.sh
中身はシンプルに2ステップ。
# Step 1: 関連記事リンク修正 & 追加
python3 wp_maintenance.py
# Step 2: WordPress → Obsidian 同期
python3 wp_to_obsidian.py
定期的に(月1くらいで)回せばWordPressとObsidianが常に揃った状態を保てる。
やってみて気づいたこと
AIに頼む前に「何が問題か」を言語化しておくと速い。
「リンクが入っていない記事を直して」という依頼だけで、Claudeは勝手に「どのパターンで壊れているか」を分類し、「どう直すか」を設計して実行した。人間がコードを書く前の設計フェーズごとバイパスしてくれる。
ファジーマッチの精度が完璧ではなく、1件だけ手動修正が必要なケースもあったが、80件以上の修正が約10秒で終わったことを考えれば十分すぎる精度だった。
まとめ
| 作業 | 件数 |
|---|---|
| 関連記事リンク化 | 4件 |
| 関連記事セクション追加 | 80件 |
| Obsidian新規同期 | 8件 |
こういう「一回だけじゃなく定期的にやりたい」メンテ作業こそ、スクリプト化してClaude管理に委ねるのが正解だと思った。
