WordPress の予約投稿が上手くいきませんでしたが、解決できました 🙂
ただし cron と wget が使える事が前提条件となります。
例えば blog の URL が http://example.com/myblog/ だった場合、
example.com 上で、cron から wget で以下のように wp-cron.php に
アクセスすると上手くいくようです。
* * * * * wget http://localhost/myblog/wp-cron.php --header="Host: example.com" |
私は WordPress MU で全てのブログで予約投稿ができるように
以下のようなスクリプトを作成して cron から実行しています。
(WordPress MU 2.8.4a で実際に使っています)
#!/bin/sh MYSQL=/usr/bin/mysql OUT=/tmp/wp-cron.out paths=`$MYSQL --user=DBユーザ名 --password=DBパスワード -D DB名 -e "SELECT path FROM wp_blogs" -N -s` for path in ${paths[0]} do wget http://localhost${path}wp-cron.php --header="Host: example.com" -O $OUT rm -f $OUT done |
上記スクリプトに実行権(chmod +x)をつけて cron から実行しています。
* * * * * /usr/local/path/to/wpcron.sh |
今のところ問題なさそうです 🙂
※ ❗ スクリプトに MySQL のパスワードなどが記述されているので注意してください
※ ❗ スクリプトは自分だけ、または管理者だけが読めるようにしましょう