【小技】「予約投稿の失敗」の原因と対処の仕方

2015年2月14日

WordPress の機能の一つとして、
日付と時間を設定してできる予約投稿機能があります。

この予約投稿機能が、うまく働いてくれない場合がありました。
それが投稿一覧を表示した時に出ている「予約投稿の失敗」です。
色々と調べてみると以下の原因があるようです。

「予約投稿の失敗」の原因として考えられる事

・キャッシュ系プラグインによる影響

WordPressが、予約投稿の処理をする際に影響を及ぼすことがあるようです。
主なキャッシュ系プラグインは、以下のようなものがあります。

WP File Cache
WP Super Cache
W3 Total Cache
Quick Cache

プラグインを無効にしてみると治る場合があるみたいです。
また、wp-contentフォルダ配下にゴミファイルが残っている場合もあるみたいなので
そこも一度確認してみましょう。

・ベーシック認証を利用している

予約投稿機能は、「wp-cron.php」で自動実行をしています。
そのため、投稿画面にベーシック認証を適用している場合に
「wp-cron.php」が認証できないので、予約投稿に失敗してしまうそうです。

WordPress を設置しているサーバー等の IPアドレスに対しては
ベーシック認証を無効にしておくと良いでしょう。

上記以外でできる対処方法

・「代替Cron」を有効にする

予約済み投稿の公開がうまくいかない場合などに使います。
この設定は、時々不安定になるそうで、デフォルトにはしていないそうです。
なので、「代替Cron」を有効にするためには
「wp-config.php」に次の1行を追加すると有効になります。

define('ALTERNATE_WP_CRON', true);

Codex > wp-config.php の編集 > 代替 Cron

・WordPressをバージョンアップする

可能性は低いですが、バージョンによって不具合の影響で
予約投稿機能に影響を及ぼしてる可能性もあるので、
バージョンアップしてみるのもよいかなと思います。

・一般設定の「タイムゾーン」を確認する
WordPress 4.1 だと「UTF+0」になっているので、東京タイムになっているか確認しましょう。

それでもまだ直らない場合

今まで書いていたことを試しても直らないと
「WP Missed Schedule Fix Failed Future Posts」というプラグインを使おうと
書いている方が多いです。
それが一番手っ取り早いとは思いますが、
このタイプは、使いはじめると半永久的に使わざるを得なくなります。
そのため、できることなら避けたいです。

もし、運用管理しているブログが文章中心で画像をほとんど使ってないのであれば
一度 WordPress を入れなおしてみるのもありかなと思います。
プラグインを削除した時にゴミファイルやゴミテーブルが残る場合があります。
なので、それが悪影響を与えている場合もあるので
イチイチ調べるのも大変なので、1度まっさらにしてしまおうと言うことです。

投稿データをエクスポートします。
画像があれば画像も FTPクライアントソフトなどでダウンロードします。
そして、WordPress の設定と使っているプラグインの名前と各設定をメモしておきます。

準備ができたら、
FTPクライアントソフトで WordPress 関連のファイルを全削除するか
ダウンロードしてローカル環境に退避させます。
データベースに格納されている WordPress で使っているテーブルも全削除します。

WordPress 本家などから、WordPress ファイルをあらためて入手して
設定やインストールをしていきます。
そして、ダウンロードしておいた投稿データをインポートします。

そして、テストで予約投稿をしてみます。
これで無事に予約投稿が成功すれば、もー大丈夫でしょう。

補足事項

「WP Missed Schedule Fix Failed Future Posts」は開発終了となり、
WordPress 公式のプラグインページからも取り下げられています。
開発終了になったプラグインを使うのは危険を伴います。
同じような機能を持つプラグインもあります。、

https://www.hiskip.com/wp/plugin/post/posting-support/4190.html

本ページはアフィリエイトプログラムによる収益を得ています

小技集

Posted by 管理人