Instead of publishing all pages at once, PageInvasion will publish certain number of pages per day until all pages are created. All other pages will be stored in Draft. You can select how many pages to be Publish per day by choosing to create between a limit (for ex: ) 20 and 40 and PageInvasion will publish between 20 and 40 pages randomly per day. Draft posts/pages will be visible only for admin.
If you are using Drip Creation setting for a group then it is recommended to have WP-Cron function running on server.
id WP-Cron does not run properly, again this is a problem with the server setup. Due to improper settings, firewall blocks that stop scripts from calling themselves so the WP-Cron function does not work. There could be some more reason which may stop WP-Cron.
Possible Solution to Most WP-Cron Problems
To avoid WP-Cron problem on your server for a single website, we have tried to use the default way of setting up cron jobs on a Linux server (Apache with cPanel as the control panel). The benefit of this method is:
- More control on when the WP-Cron function runs.
- Avoid multiple loops.
- If you own a server with lot of WordPress websites hosted, then this can reduce the server load.
Before you get into this, make sure that your web host allows you to setup default Linux cron jobs. The way this is setup would be different based on the control panel offered by your host, but in this article we will provide a guide to setup a cron job using the cPanel control panel that is common on Linux servers nowadays.
The steps we followed were:
- Disable internal WP-Cron to execute on page load.
- Setup a cron function that makes a get request to the wp-cron.php file at regular intervals based on your preference.
Yes, it’s that simple. Just two steps to make things run smoother.
NOTE: Before you follow this method, please note that disabling internal WP-Cron can also result in the website not running properly based on your setup or the plugins used.
1. Disable internal WP-Cron function
Open the wp-config.php file in NotePad or the editor of your choice and add the below two lines at the top.
//Disable internal Wp-Cron function
This will now stop the internal WP-Cron function from executing and will not call the wp-cron.php file.
2. Setup a real cron function from your host’s control panel
If you are allowed to setup cron jobs, you would have to setup a cron as below:
wget https://www.server.com/wp-cron.php > /dev/null 2>&1
Below are the steps to do this from a cPanel based host.
1. Access your account’s cPanel
Usually the link is https://yourwebsite.com/cpanel or https://yourwebsite.com:2082. Once your enter your user id and password and enter the control panel, scroll down to the “Advanced section”.
2. Go to Cron Settings Page
Click on the “Cron Jobs” icon in the advanced section.
3. Setup a Cron Job
On the new page you would find an “Add New Cron Job” section like the one in the above image. From the Common Settings drop down field, select “Every 5 minutes…”. Once you select this, the rest of the fields will be automatically filled with the necessary information. In the next step we will explain my intention of setting up a 5 minute interval to run the script.
In the command field, add the below line. Remember to add the correct website address.
wget https://www.yourwebsite.com/wp-cron.php > /dev/null 2>&1
Finally, click on the “Add New Cron Job” button.
From now on the server will make a request for the wp-cron.php file every 5 minutes. Now the reason we have set this as 5 minutes, is because we mostly set the script execution time to 4 minutes instead of 60 seconds. This is done to be able to load large image files, backup processes, etc. However you may also change the settings and choose other options to run the cron every 1 minute.
NOTE: This runs well for general WordPress websites. For those using a WordPress network, there might be additional things required so please do not use the above steps if you run WordPress Multi-site version