SFA Publisher 管理画面(Generate / Prompts / Templates / Settings / Logs / Keywords)
SFA Publisher
OpenAI 自動投稿エンジン / Settings・Prompts・Logs のコンパクトUIサンプル
DIAG: CAP= read / can? YES
seed上書き 28 / スキップ 29
OpenAI & ラップ設定
API キー・モデル・自動ラップなど、記事生成まわりの共通設定。
OpenAI API Key
wp_options には暗号化して保存。画面上は常にマスク表示。
Model
自動投稿 / 手動生成ともに共通で使用するモデル。
新規投稿を保存時に自動ラップ
表示時にラップ
REST トークン
Cron や外部ツールからの実行ガード。クリックでコピー。
カテゴリ優先度 & スケジューラ
自動投稿の優先カテゴリやスラッグ生成、WP Cron の対象カテゴリを制御。
カテゴリ優先度
compare
review
howto
life
ai-tools
優先順(slug をカンマ区切り)。保存時に自動整列。
ASCII スラッグを強制
スラッグ接頭辞
例: sfa-20251129-xxxx のように付与。
スラッグパターン
使用可: {prefix} {cat} {date} {hash8} {title}
スケジュール(WP Cron)
実行時刻(サーバ時刻・時)
対象カテゴリ
1カテゴリあたり本数
システムプロンプト
すべてのカテゴリで共通の役割・トーンを定義。
カテゴリ別プロンプト
slug ごとに JSON スキーマを切り替える。下は代表例だけを抜粋。
default
AIツール (ai-tools)
生活 (life)
| 日時 | カテゴリ | 結果 |
|---|---|---|
| 2025-11-29 19:14:01 | health | OK post_id=6188 |
| 2025-11-29 19:14:34 | sidejob | OK post_id=6190 |
| 2025-11-29 19:14:34 | cooking | DEBUG scheduled resume=1 at 2025-11-29 19:15:34 |
| 2025-11-29 19:14:34 | cooking | INFO continue-same-day scheduled (resume_idx=6, retries=7) |
| 2025-11-30 19:00:20 | contents | OK post_id=6200 |
| 2025-11-30 19:00:20 | all | INFO DONE: full sweep; scheduled tomorrow 19:02 |
SFA Publisher
OpenAI 自動投稿エンジン / Settings・Prompts・Logs + 本文ブロック形式のサンプルUI
DIAG: CAP= read / can? YES
seed上書き 28 / スキップ 29
OpenAI & ラップ設定
API キー・モデル・自動ラップ・本文ブロック形式など、記事生成まわりの共通設定。
OpenAI API Key
wp_options には暗号化して保存。画面上は常にマスク表示(実運用を想定)。
Model
自動投稿 / 手動生成ともに共通で使用するモデル。
新規投稿を保存時に自動ラップ
投稿の保存時に本文をテンプレートHTMLで1回だけラップします(DBの post_content を整形)。
表示時にラップ
フロント出力時にテンプレートでラップします。既存記事をDB変更なしで統一レイアウトにしたいとき向け。
本文ブロック形式
自動投稿で生成された本文をプレーンHTMLとして保存します。
ブロックエディター上では「クラシック」ブロック1つとして表示される従来どおりの形式です。
本文全体を
<!-- wp:html --> ... <!-- /wp:html --> 形式で保存します。
後からHTMLを直接編集したい場合や、テンプレート付きレイアウトを崩さずに微調整したい場合に便利です。
既存記事には影響しません。今後、自動投稿プラグインが新規に作成する投稿の本文ブロック形式のみ切り替えます。
REST トークン
UIサンプルではダミー値です。実運用では wp-admin の設定画面で本物を発行し、
公開ページやサンプル記事にトークン値を直書きしないこと。
カテゴリ優先度 & スケジューラ
自動投稿の優先カテゴリやスラッグ生成、WP Cron の対象カテゴリを制御。
カテゴリ優先度
compare
review
howto
life
ai-tools
優先順(slug をカンマ区切り)。保存時に自動整列。
ASCII スラッグを強制
スラッグ接頭辞
例: sfa-20251129-xxxx のように付与。
スラッグパターン
使用可: {prefix} {cat} {date} {hash8} {title}
スケジュール(WP Cron)
WP-Cron による毎日の自動投稿を有効化します。
実行時刻(サーバ時刻・時)
対象カテゴリ
1カテゴリあたり本数
システムプロンプト
すべてのカテゴリで共通の役割・トーンを定義。
カテゴリ別プロンプト
slug ごとに JSON スキーマを切り替える。下は代表例だけを抜粋。
default
AIツール (ai-tools)
生活 (life)
| 日時 | カテゴリ | 結果 |
|---|---|---|
| 2025-11-29 19:14:01 | health | OK post_id=6188 |
| 2025-11-29 19:14:34 | sidejob | OK post_id=6190 |
| 2025-11-29 19:14:34 | cooking | DEBUG scheduled resume=1 at 2025-11-29 19:15:34 |
| 2025-11-29 19:14:34 | cooking | INFO continue-same-day scheduled (resume_idx=6, retries=7) |
| 2025-11-30 19:00:20 | contents | OK post_id=6200 |
| 2025-11-30 19:00:20 | all | INFO DONE: full sweep; scheduled tomorrow 19:02 |
SFA Publisher
OpenAI 自動投稿エンジン / Settings・Prompts・Logs・Keywords サンプルUI
DIAG: CAP= read / can? YES
seed上書き 28 / スキップ 29
OpenAI & ラップ設定
API キー・モデル・自動ラップ・本文ブロック形式など、記事生成まわりの共通設定。
OpenAI API Key
wp_options には暗号化して保存。画面上は常にマスク表示(実運用を想定)。
Model
自動投稿 / 手動生成ともに共通で使用するモデル。
新規投稿を保存時に自動ラップ
投稿の保存時に本文をテンプレートHTMLで1回だけラップします(DBの post_content を整形)。
表示時にラップ
フロント出力時にテンプレートでラップします。既存記事をDB変更なしで統一レイアウトにしたいとき向け。
本文ブロック形式
自動投稿で生成された本文をプレーンHTMLとして保存します。
ブロックエディター上では「クラシック」ブロック1つとして表示される従来どおりの形式です。
本文全体を
<!-- wp:html --> ... <!-- /wp:html --> 形式で保存します。
後からHTMLを直接編集したい場合や、テンプレート付きレイアウトを崩さずに微調整したい場合に便利です。
既存記事には影響しません。今後、自動投稿プラグインが新規に作成する投稿の本文ブロック形式のみ切り替えます。
REST トークン
UIサンプルではダミー値です。実運用では wp-admin の設定画面で本物を発行し、
公開ページやサンプル記事にトークン値を直書きしないこと。
カテゴリ優先度 & スケジューラ
自動投稿の優先カテゴリやスラッグ生成、WP Cron の対象カテゴリを制御。
カテゴリ優先度
compare
review
howto
life
ai-tools
優先順(slug をカンマ区切り)。保存時に自動整列。
ASCII スラッグを強制
スラッグ接頭辞
例: sfa-20251129-xxxx のように付与。
スラッグパターン
使用可: {prefix} {cat} {date} {hash8} {title}
スケジュール(WP Cron)
WP-Cron による毎日の自動投稿を有効化します。
実行時刻(サーバ時刻・時)
対象カテゴリ
1カテゴリあたり本数
システムプロンプト
すべてのカテゴリで共通の役割・トーンを定義。
カテゴリ別プロンプト
slug ごとに JSON スキーマを切り替える。下は代表例だけを抜粋。
default
AIツール (ai-tools)
生活 (life)
| 日時 | カテゴリ | 結果 |
|---|---|---|
| 2025-11-29 19:14:01 | health | OK post_id=6188 |
| 2025-11-29 19:14:34 | sidejob | OK post_id=6190 |
| 2025-11-29 19:14:34 | cooking | DEBUG scheduled resume=1 at 2025-11-29 19:15:34 |
| 2025-11-29 19:14:34 | cooking | INFO continue-same-day scheduled (resume_idx=6, retries=7) |
| 2025-11-30 19:00:20 | contents | OK post_id=6200 |
| 2025-11-30 19:00:20 | all | INFO DONE: full sweep; scheduled tomorrow 19:02 |
ベース / フリーキーワード設定
サブカテゴリの決め方をキーワードで制御します。
ベースキーワード = サイクリックに実行
フリーキーワード = 1回だけ実行 & 成功時に削除
ベースキーワード
base
カテゴリごとに「軸」となるキーワードを登録します。自動投稿時、カテゴリごとにサイクリックに使用されます。
| カテゴリ | ベースキーワード(カンマ区切り) |
|---|---|
| AIツール (ai-tools) | |
| 副業 (sidejob) | |
| 投資 (investment) | |
| 生活 (life) |
フリーキーワードキュー
free
追加されたキーワードは、次回の自動投稿処理で 1 回だけ優先実行されます。
投稿に成功したキーワードはキューから自動削除され、結果は Logs で確認します。
フリーキーワード入力
・1 行 = 1 キーワードセットとして扱います。
・保存時にキューへ追加され、次回以降の自動投稿で順番に消化されます。
・保存時にキューへ追加され、次回以降の自動投稿で順番に消化されます。
処理モード
失敗したキーワードは残したままにし、Logs タブにエラーを出力します。
SFA Publisher
OpenAI 自動投稿エンジン / Generate・Prompts・Templates・Settings・Logs・Keywords サンプルUI
PPS_DIAG: CAP= read / can? YES
SFA Prompts Seeder: 新規作成 0 / seed上書き 28 / スキップ 29
記事の生成条件
カテゴリとテンプレートを中心に、テーマ・補助情報・投稿ステータスを指定します。
カテゴリ
生成した記事の「投稿カテゴリ」。プロンプトもこのカテゴリに紐づくものが使われます。
テンプレート
自由に作成したテンプレートから選択します。
「自動選択」の場合は Templates / Keywords の設定に従って決定されます。
テーマ(任意)
生成したい記事の大まかなテーマ。空欄の場合はカテゴリとテンプレートに応じてAIが決定します。
補助情報(任意)
プロンプトにそのまま渡す補足情報。ベース / フリーキーワードと一緒にAIへ送られる想定。
投稿ステータス
生成された記事をどのステータスで保存するかを指定します。
実行イメージ
実装時にはここに AI へ送るペイロードプレビューや、直近の生成ログを表示する想定。
送信ペイロード(イメージ)
{
"category": "ai-tools",
"template": "ai-tools.html",
"status": "draft",
"base_keywords": ["ChatGPT", "AI自動化"],
"free_keyword": "AIツール 比較一覧",
"theme": "副業にも使えるAIライティングツール特集",
"extra": "ブログ運営者向け。無料〜安価なツールを優先。"
}
直近の手動生成ログ
Logs タブの一部を抜粋表示するなどの使い方を想定。
- 2025-11-30 21:10:02 / ai-tools / テンプレート: ai-tools.html / status: draft / OK
- 2025-11-30 20:58:41 / life / テンプレート: life.html / status: publish / OK
- 2025-11-30 20:40:10 / investment / テンプレート: compare.html / status: draft / ERROR (rate limit)
システムプロンプト
すべてのカテゴリで共通の役割・トーンを定義。
カテゴリ別プロンプト
slug ごとに JSON スキーマを切り替える。下は代表例だけを抜粋。
default
AIツール (ai-tools)
生活 (life)
テンプレート管理
自由に作成 & 自由に紐づけ
テンプレートそのものの定義と、「どの条件でどのテンプレートを使うか」の紐づけを分離して管理します。
・テンプレート = レイアウトやHTML構造そのもの(/uploads/sfa-publisher-templates/*.html)
・マッピング = カテゴリやキーワード・用途(自動投稿 / 手動Generate)ごとに使うテンプレートのルール
・テンプレート = レイアウトやHTML構造そのもの(/uploads/sfa-publisher-templates/*.html)
・マッピング = カテゴリやキーワード・用途(自動投稿 / 手動Generate)ごとに使うテンプレートのルール
テンプレート一覧
テンプレートはカテゴリに依存しない「パーツ」として自由に作成します。
| ID | ラベル | ファイル名 | 用途 | 紐づけ数 |
|---|---|---|---|---|
| default | 汎用記事レイアウト | default.html | 共通 | 8 件 |
| life-basic | 生活系 基本レイアウト | life.html | 生活 | 3 件 |
| invest-compare | 投資 比較・ランキング | compare.html | 投資 | 4 件 |
| ai-tools-feature | AIツール特集 | ai-tools.html | AIツール | 5 件 |
新規テンプレートID
半角英数・ハイフン。DBやRESTの識別子として使用します。
ラベル
ファイル名
/wp-content/uploads/sfa-publisher-templates/ 以下のHTMLファイル名を想定。
メモ(任意)
テンプレート紐づけ(マッピング)
「どの条件でどのテンプレートを使うか」を自由に定義します。
・カテゴリ / ベースキーワード / フリーキーワード / 実行モード(自動投稿 or Generate)などを組み合わせ可能。
・上から順に評価され、最初にマッチしたルールが適用される想定。
・カテゴリ / ベースキーワード / フリーキーワード / 実行モード(自動投稿 or Generate)などを組み合わせ可能。
・上から順に評価され、最初にマッチしたルールが適用される想定。
| 優先度 | スコープ | 条件 | テンプレート | 対象 |
|---|---|---|---|---|
| 10 | カテゴリ | AIツール (ai-tools) | 自動投稿 + Generate | |
| 20 | カテゴリ | 投資 (investment) | 自動投稿のみ | |
| 30 | ベースKW | 「時短家事」含む | Generateのみ | |
| 40 | フリーKW | 「比較」「ランキング」を含む | 自動投稿 + Generate | |
| 90 | デフォルト | その他すべて | 全モード |
OpenAI & ラップ設定
API キー・モデル・自動ラップ・本文ブロック形式など、記事生成まわりの共通設定。
OpenAI API Key
wp_options には暗号化して保存。画面上は常にマスク表示(実運用を想定)。
Model
自動投稿 / 手動生成ともに共通で使用するモデル。
新規投稿を保存時に自動ラップ
投稿の保存時に本文をテンプレートHTMLで1回だけラップします(DBの post_content を整形)。
表示時にラップ
フロント出力時にテンプレートでラップします。既存記事をDB変更なしで統一レイアウトにしたいとき向け。
本文ブロック形式
自動投稿で生成された本文をプレーンHTMLとして保存します。
ブロックエディター上では「クラシック」ブロック1つとして表示される従来どおりの形式です。
本文全体を
<!-- wp:html --> ... <!-- /wp:html --> 形式で保存します。
後からHTMLを直接編集したい場合や、テンプレート付きレイアウトを崩さずに微調整したい場合に便利です。
既存記事には影響しません。今後、自動投稿プラグインが新規に作成する投稿の本文ブロック形式のみ切り替えます。
REST トークン
UIサンプルではダミー値です。実運用では wp-admin の設定画面で本物を発行し、
公開ページやサンプル記事にトークン値を直書きしないこと。
カテゴリ優先度 & スケジューラ
自動投稿の優先カテゴリやスラッグ生成、WP Cron の対象カテゴリを制御。
カテゴリ優先度
compare
review
howto
life
ai-tools
優先順(slug をカンマ区切り)。保存時に自動整列。
ASCII スラッグを強制
スラッグ接頭辞
例: sfa-20251129-xxxx のように付与。
スラッグパターン
使用可: {prefix} {cat} {date} {hash8} {title}
スケジュール(WP Cron)
WP-Cron による毎日の自動投稿を有効化します。
実行時刻(サーバ時刻・時)
対象カテゴリ
1カテゴリあたり本数
| 日時 | カテゴリ | 結果 |
|---|---|---|
| 2025-11-29 19:14:01 | health | OK post_id=6188 |
| 2025-11-29 19:14:34 | sidejob | OK post_id=6190 |
| 2025-11-29 19:14:34 | cooking | DEBUG scheduled resume=1 at 2025-11-29 19:15:34 |
| 2025-11-29 19:14:34 | cooking | INFO continue-same-day scheduled (resume_idx=6, retries=7) |
| 2025-11-30 19:00:20 | contents | OK post_id=6200 |
| 2025-11-30 19:00:20 | all | INFO DONE: full sweep; scheduled tomorrow 19:02 |
ベース / フリーキーワード設定
サブカテゴリの決め方をキーワードで制御します。
ベースキーワード = サイクリックに実行
フリーキーワード = 1回だけ実行 & 成功時に削除
ベースキーワード
base
カテゴリごとに「軸」となるキーワードを登録します。自動投稿時、カテゴリごとにサイクリックに使用されます。
| カテゴリ | ベースキーワード(カンマ区切り) |
|---|---|
| AIツール (ai-tools) | |
| 副業 (sidejob) | |
| 投資 (investment) | |
| 生活 (life) |
フリーキーワードキュー
free
追加されたキーワードは、次回の自動投稿処理で 1 回だけ優先実行されます。
投稿に成功したキーワードはキューから自動削除され、結果は Logs で確認します。
フリーキーワード入力
・1 行 = 1 キーワードセットとして扱います。
・保存時にキューへ追加され、次回以降の自動投稿で順番に消化されます。
・保存時にキューへ追加され、次回以降の自動投稿で順番に消化されます。
処理モード
失敗したキーワードは残したままにし、Logs タブにエラーを出力します。
SFA Publisher – テンプレート管理(DB保存)
テンプレートを DB に保存して管理し、カテゴリ・キーワードから適用テンプレートを解決するための管理画面サンプル。
Templates v1.0 / storage: DB(html_body)
テンプレート一覧
Template Registry
各テンプレは DB テーブル (例:
wp_sfa_publisher_templates) の 1 行として管理し、
template_id をキーに紐づけや解決を行います。
| Template ID | ラベル | schema_id | 最終更新 | 状態 |
|---|---|---|---|---|
default |
汎用記事レイアウト | article_default |
2025-11-30 | 有効 |
life-basic |
生活系 基本レイアウト | article_life |
2025-11-29 | 有効 |
invest-compare |
投資 比較・ランキング | article_compare |
2025-11-28 | 有効 |
ai-tools-feature |
AIツール特集 | article_ai_tools |
2025-11-27 | 下書き |
グローバルデフォルトテンプレート
fallback
どのマッピング・カテゴリデフォルトにも該当しない場合に使用するテンプレート。
template_id のみをオプションに保存します。
デフォルト
保存先:
自動投稿・Generate の両方で、テンプレ解決ロジックの最後のフォールバックとして使用します。
sfa_publisher_default_template_id。自動投稿・Generate の両方で、テンプレ解決ロジックの最後のフォールバックとして使用します。
テンプレート編集
DB: html_body editor
選択中テンプレートのメタ情報と
生成時も必ずこの
html_body(本文HTML)をDBに保存します。生成時も必ずこの
html_body を取得して使用し、ファイルとの二重管理は行いません。
Template ID
半角英数・ハイフン。テンプレ解決やマッピングで参照される一意キー。保存後の変更は非推奨。
ラベル
schema_id
このテンプレが前提とする JSON のスキーマID(例:
Prompts 側と揃えておくと、フィールドのズレを避けやすくなります。
article_ai_tools)。Prompts 側と揃えておくと、フィールドのズレを避けやすくなります。
メモ
テンプレート本文 (html_body)
実体は DB テーブルの
プレースホルダ例:
生成処理側で JSON レスポンスとマージし、完成した HTML を投稿本文に書き込みます。
html_body カラムに保存されます。プレースホルダ例:
{{ title }}, {{ lede }}, {{ body_html }} など。生成処理側で JSON レスポンスとマージし、完成した HTML を投稿本文に書き込みます。
決済はStripeで安全に処理されます。
Amazonで「カテゴリ・lt」を検索
Amazonで探す
