WordPressの予約投稿が失敗しまくるのでプラグインで解決した

WP5.x以降、ただでさえ忌まわしいブロックエディタに苦戦しながらも、予約投稿のミスが目立つようになった。解決法はないかと探し、それぞれを試した結果、「Scheduled Post Trigger」で失敗しなくなりました

スポンサーリンク

WordPressの予約投稿ミスは「Scheduled Post Trigger」で解決しました

WPの予約投稿は「記事公開時間のサイトアクセスがトリガー」なため、無アクセスだとそもそも機能しません。でもリアルアクセスを見てもそれなりにあるし、自分がアクセスして「投稿されてないやん?」と気づくくらいだから、それが原因であるとも考えにくい。

WP5.xから8割型は予約失敗するため、投稿後にいちいちチェックするのも手間だから、解決方法を探していました。

んで、一番最後に試して確実に改善したのは「Scheduled Post Trigger」というプラグインをインストールしてから。それから5記事ほど様子見したけど失敗なし!よって、私はこれで解決しました。

使い方は簡単です。

プラグインページから新規追加で「Scheduled Post Trigger」を検索し、インストールして有効化するだけ。これだけでいいからホント楽です。

そもそも予約投稿システムがUNK説

WPの予約投稿は、予約した時間に誰かがアクセスすることで公開される仕組みらしい。……アクセス全くないサイトだと機能の存在意義すらないよね?

弱小サイトに予約投稿すらさせないザルシステムなわけですが、これを改善するにはどうしたらいいのだろう。予約投稿の失敗を改善する方法は、調べた中だと主流がこの3つ。

  • タイムゾーンを国際基準から東京へ(改善ナシ)
  • 代替cron(マシになったかも?)
  • プラグインでなんとかする(改善しました!)

まあ予約した時間に誰かがアクセスすればいいので、自分でそれをやればいい話ですが、「投稿されているカナー」と覗いて失敗しているんだから、誰かのアクセスじゃなくて一定のアクセスが必要だってことがわかる。

その役目を果たしてくれるのが「代替cron」。これはunix系の定期スケジュール管理コマンドで、サイトアクセスの代理をしてくれるようなもんです。実装するには「wp-config.php」に一文を書き加えればいいだけ。方法は下記サイトを参考にしてください。

キャシュプラグインを入れていると改善しにくいのは、サーバー応答のパラメータを上書きするからでしょうね。あらかじめインスコしてからconfigに追記すれば大丈夫でしょうけど、その他でブロックしている可能性が高い。喧嘩しているコードを探すよりもアンインストしたほうが早い──てことかもしれません。ちなみにキャッシュプラグインも消してcron試したけど改善しませんでした。

プラグインのおかげで予約投稿もミスしなくなったのはいいけど、無しでも成功するのが本来のシステムではないだろうか……。

コメント