WordPressの予約投稿が失敗する件の解決方法

In: WordPress

9 1月 2009

WordPress2.6以降には、予約投稿という便利な機能があります。
未来の日付で投稿すると、その日付になったときに自動的に公開してくれる、というものです。
(厳密には、「その日付以降に誰かがアクセスしたとき」です。サーバーのCronを使っているわけではなく、内部プログラムが指定時刻に HTTP リクエストを発行する仕組みだそうなので。誰もいないシベリアの森で木が倒れたが、誰もその音を聞かなかった。その木は本当に倒れたか?というやつです。)

しかしこの予約投稿が、どうもうまく機能しないという声が多いようです。
WordPressのサポートフォーラムを日本版、本家と相当数見て回ったけど、みんなおろおろと困っているばかりで、有効な解決策がないようでした。「自分の場合はこれで解決」という声はありましたけど、決定打に欠けるというか。

僕もハマってしまったんですが、どうにか解決することが出来ました。
この解決方法は、
サーバーのroot権限があり
ターミナルで接続できること
が条件です。

WordPressの予約投稿機能を司るのは、WordPressフォルダ直下にある wp-cron.php というプログラムです。(これがないバージョンは予約投稿できません)
まず、これをwgetで取得してみてください。

wget http://yourdomain.com/wordpress/wp-cron.php

これでOKが出る人は、多分予約投稿出来ているか、あるいは全く別の問題です。
いつまで経っても帰ってこない、もしくは404エラーの場合は、この解決方法を試してみてください。

/etc/hosts
を編集します。

# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1               localhost.localdomain localhost

デフォルトだとこんな感じでしょうか。

ここに、WordPressが参照すべき、そのブログのドメインとIPを追加記述してあげます。

# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1               localhost.localdomain localhost
192.168.1.11           yurdomain.co.jp

このIPは、バーチャルホストの場合はそのローカルIPを、そうでない場合はグローバルIPを入れてください。

これでひとまず多分うまくいく、はず。対症療法に近いので、継続調査予定。

広告

この辺が参考になりました。
WordPress Problem with Scheduled Post Solved | Busy Blogging Dot Com
WordPress › Support » Missed Schedule – Scheduled Posts Not Publishing With 2.7
この辺は参考になりませんでした。
WordPress › フォーラム » 予約投稿がうまくできません。
WordPress › フォーラム » 指定日(予約)投稿ができません
ここはちょっと参考になりました。
WordPress › フォーラム » Basic認証下で、予約投稿が効かない

コメント

11 Responses to WordPressの予約投稿が失敗する件の解決方法

トラックバックURL:

Avatar

WordPressのセキュリティ対応で行ったこと(プラグイン5個+アクセス制御) at 適宜覚書-Fragments

3月 1st, 2010 at 12:05 AM

[…] WordPressの予約投稿が失敗する件の解決方法 | WordPress | 『Weblogy』 var hatena_bookmark_anywhere_limit = 5;var hatena_bookmark_anywhere_style = true;var hatena_bookmark_anywhere_collapse = true;var hatena_bookmark_anywhe […]

Avatar

k_kanamori

2月 1st, 2011 at 12:42 AM

WordPressの予約投稿が失敗する件の解決方法 | WordPress | 『Weblogy』 http://goo.gl/eJIZc

Avatar

Mobile対応編~KtaiEntry~ | Ohtapoo.com

6月 26th, 2011 at 2:03 PM

[…] ttp://blog.dacelo.info/wordpress/entry-577.html […]

Avatar

nisimura megumi

9月 1st, 2011 at 4:42 PM

[WordPressの予約投稿が失敗する件の解決方法 – Weblogy] http://t.co/zYuxRvj

Avatar

nim95

9月 2nd, 2011 at 1:42 AM

[WordPressの予約投稿が失敗する件の解決方法 – Weblogy] http://t.co/zYuxRvj

Avatar

たった1行の修正でCoreServerでもWordPressの予約投稿を使えるようにしてみた | Morley.JP

4月 3rd, 2012 at 9:11 AM

[…] (参考:http://blog.dacelo.info/wordpress/entry-577.html) なるほど~、そうだったんですね。でもこの記事に書いてあることを試すのはちょっと敷居がたかそうだな~、と思って別の記事をけんさく […]

Avatar

ubuntuでwordpress(予約投稿の失敗) | Motorola mpc8241なブログ

8月 10th, 2012 at 12:03 PM

[…] wordpressで予約投稿すると失敗していたので対処方法を調べたところ weblogyさんのページに書いてある通りにやってみたら予約投稿が出来るようになりました 編集した場所は/etc/hostsとwp-inc […]

Avatar

Katsuo Ishida/石田賀津男

12月 5th, 2012 at 9:13 PM

WordPressで予約投稿が失敗する問題はこれで解決した。 http://t.co/z9c0nQJH 言われればすげー当たり前の話なんだけど、Linux詳しくないからわからんのだぜ。

Avatar

wis_arle

12月 6th, 2012 at 6:13 AM

WordPressで予約投稿が失敗する問題はこれで解決した。 http://t.co/z9c0nQJH 言われればすげー当たり前の話なんだけど、Linux詳しくないからわからんのだぜ。

Avatar

WordPress 予約投稿できない→できた! | Inside of Papaya

3月 23rd, 2013 at 10:23 PM

[…] .htaccess 触るのかぁ…。 ちょっとやめときたい。 なんとなく…。 こういうのもあったんだけど… /etc/hosts 触れないし…。 […]

Avatar

homihoo

10月 10th, 2014 at 6:06 PM

サーバーのCronではなくwp-cron.phpが予約投稿にかかわっている!

Comment Form

About this blog

ここは、SE見習いである私ことdaceloが、日夜習得していくシステム関連の備忘録、phpやWordPressTipsのネタ、あるいはSEOやWebマーケティング関連の雑感を投稿するブログです。 平日は大体毎日投稿しています。土日は休業日です。

カテゴリー

カテゴリー

アーカイブ