Postie relies on the built-in WordPress Cron process to fetch emails and turn them into posts. However, WordPress requires that there be traffic to your site in order to run the Cron process.
The first check you must do to be sure the WordPress Cron is enabled. Clicking Test Config on the Postie settings page will tell you if Cron is disabled. Look for
If you see
Cron: off open your wp-config.php file and find a line like
if present, remove it. WordPress Cron should now work.
If you would prefer to have more fine-grained control of how Postie checks for mail or you can’t get the WordPress Cron to work, you can setup a cron job.
The software utility Cron is a time-based job scheduler in Unix-like computer operating systems. People who set up and maintain software environments use cron to schedule jobs (commands or shell scripts) to run periodically at fixed times, dates, or intervals. It typically automates system maintenance or administration—though its general-purpose nature makes it useful for things like connecting to the Internet and downloading email at regular intervals. The name cron comes from the Greek word for time, χρόνος chronos.
The Easy Way
If you are using a hosting company that doesn’t allow you access to cron or you don’t want to mess with it you can use a service like SetCronJob to access http://<mysite>/?postie=get-mail
If your hosting company uses cPanel for managing your domain you can add a cron job through the cPanel interface. See the cron job docs then choose one of the commands listed below.
The Techie Way
Setup a cronjob to access http://<mysite>/?postie=get-mail Note that every time you access this page Postie will run – it is like clicking Run Postie on the Admin screen.
Note that before Postie 1.6 the URL was: http://<mysite>/wp-content/plugins/postie/get_mail.php This URL is no longer supported.
If your site runs on a UNIX/linux server, and you have shell access, you can enable mail checking using cron.
This fetches the mail every five minutes with lynx
*/5 * * * * /usr/bin/lynx --source http://<mysite>/?postie=get-mail >/dev/null 2>&1
This fetches the mail every ten minutes with wget
*/10 * * * * /usr/bin/wget -O /dev/null http://<mysite>/?postie=get-mail >/dev/null 2>&1
You will need to install wget or curl.
Then use the Task Scheduler control panel to call wget or curl.