このページは原文を AI が翻訳したものです。
前2つの記事の奮闘の末、現在はEmDashの管理画面で記事を投稿できるようになりました。ただ、Astroから移行してきたこともあって、いくつか歴史的な負債というか、不自然な点を修正する必要があります。
公開日時の二重設定

図からわかるように、一番下の Publication date は、以前Astroで静的MDXブログを書いていたときのpubDateの値です。一方、右側にはEmDash独自のPublish dateの値もありますが、この2つはどちらか1つだけ残せば十分です。ここではEmDash標準のものを残し、下のPublication dateを削除します。
対処法も簡単で、Content Types → Post に移動して publication date という項目を確認し、削除をクリックするだけです。
もちろん、関連するコードの修正についてはここでは詳しく説明しません。Claude Codeに任せれば簡単に完了できます。

予約投稿が成功しない
現在もう1つ問題があるのは、記事の予約投稿を設定しても、指定した時間になっても公開されないことです。ただ、よく考えてみれば当然で、関連するCronを設定していないので、予約投稿が動くはずがありません。

解決方法も簡単で、公式ドキュメント を参考に、wrangler.jsonc ファイルに以下のような設定を追加します。
{
"main": "./src/worker.ts",
"triggers": { "crons": ["* * * * *"] },
}# ./src/worker.ts
/**
* Cloudflare Worker entry.
*
* The Astro adapter's own entry only exports `fetch`, so nothing drives
* EmDash's scheduled work in production: the Cloudflare build sets
* `createScheduler = null` and expects a Cron Trigger to call
* `runScheduledTasks()` through a `scheduled()` handler. This re-export adds
* that handler to the same Worker, which is what `emdash doctor` checks for.
* Without it, scheduled posts stay `scheduled` past their publish time.
*/
export { default, PluginBridge } from "@emdash-cms/cloudflare/worker";その後、デプロイを進めると、以下のような設定が表示されれば成功です。これで予約投稿機能を正常に使えるようになります!




コメントを読み込み中…