When I first designed SBPM, I was building “thin” affiliate sites that were designed to bur brightly for a few months, before being tossed into the Google de-indexed black hole. This worked wonderfully (and still does) and it was soon discovered that having more posts on your sites was a better thing.
Therefore, the task was to build a site with as many posts as possible – the more pages that were indexed, the more chance you have of getting a visitor, the more chance you have of making an affiliate sale.
However, one of the issues that people keep running into when trying to run SBPM to make lots of posts at once, is that either the PHP timeout kicks in after 30 seconds and their host kills the script, or their server runs out of memory.
Whilst I can take some of the responsibility for the effectiveness of my PHP coding skills to keep the memory usage of SBPM down, there is not a great deal I could do (from a code perspective) to stop memory type issues from happening if you want to make 100k posts. WordPress can be a memory hog and there are always other PHP processes running at the same time which can impact SBPM running smoothly.
Getting these timeouts can be a pain, especially when you are not sure how far through the posts SBPM got, when you want to start posting again.
Here are a few ways you can break that memory and timeout limit and use SBPM to take your blog to 100k posts.
Solution 1: Use the “Try to override PHP timeout” option in SBPM.
By default, with most hosting companies and services, there is a timeout value set to not allow PHP scripts to run for more than 30 seconds.
This is so that your VPS or shared hosting server will not get overloaded by a single process that has decided it needs to run all day, consuming more and more memory and resources as it goes.
This is especially useful for shared hosts, where more than one website, belonging to different people exist on the same piece of hardware. It has to be fair to the other users, so PHP scripts running for a longer period of time get killed automatically.
An option was added to the “Posts and schedule options” panel within SBPM back in July 2011, where you are able to temporarily set the “PHP timeout value” to 0, meaning that the SBPM process should never be killed automatically.
This does not always work, and it will depend on your hosting company, who will often not allow their customers to change these sorts of values – but it works very well for people who have VPS or dedicated types of servers.
Solution 2: Split your keywords into chunks.
If you have a very large keyword list, another great way to create over 100k posts on your WordPress site is to break that list into smaller chunks of several thousand keywords at a time.
If you are getting PHP timeouts or memory issues, you will end up getting a feeling for a rough limit of how many posts you can make at a time before you run into issues. Splitting your keyword list down into smaller amounts and then running SBPM several times, but changing the keyword list each time, will get you towards the 100k posts milestone.
Solution 3: Reduce the complexity.
I have found that the larger the content or the more complex it is when posting with SBPM, the more memory it will take up and the quicker you might run into issues.
The data that you enter into SBPM is stored inside the WordPress database, but when you click the “Make Posts” button in the plugin’s admin page, the majority of this data is kept in memory.
This is so that, rather than causing additional overhead each time by SBPM asking the WordPress MySQL database to grab the record containing the content every time it makes a post (several times a second) it is far quicker and less intensive to keep the content in memory.
However, if you have a large spun article or some content that is spun several levels deep, this can push the memory usage up and cause the number of posts being made at one time to lower.
Solution 4: Don’t use WordPress tags.
Almost everything in WordPress is stored in a database table, but the posts are kept in one table and other values such as tags kept in another.
If you use SBPM to create tags for your posts, the can cause an additional overhead (speed and memory) when making posts, possibly causing SBPM to quit sooner than it should.
In my opinion, tags are not all that useful anyway and I have stopped using them – even on my other thicker authority WordPress sites I manage. By not using them in SBPM, you might be saving yourself from memory overload.
Solution 5: Keep reposting.
When you click the “Make Posts!” button, there are also a few options you can select so that SBPM knows what to do when it encounters a post that already exists with the same title.
- Overwrite with new content
- Do nothing (skip post)
- Create new post
If you were looking to change the content on an existing post with new information (like when you made the SBPM posts already, but want to add some more content or change something), you can select the “Overwrite with new content” option. Similarly, you can get SBPM to just create a new post instead, adding another unique article with the same name, but different spun content.
However, using the “Do nothing (skip post)” option is useful when trying to reach that 100k posts milestone.
If you have a massive keyword list in SBPM and have already made the posts, but ran into an error, you can tick this option to continue from where you left off. When you click the “Make Posts!” button, SBPM checks to see what posts are already there before it starts and will skip any keyword it knows exists already.
So if you were at keyword number 20,001 when PHP decided to terminate the script or there was a memory issue, SBPM will skip past the first 20,000 posts as it realises they already exist and will start at the next one.
Sometimes, the way to get to a very large number of posts in Wordress when using SBPM is to just “keep posting!” until it is done.
Solution 6: Create locally and import.
A few of the people I am still in contact with regularly who use SBPM to build sites often say that it is easier to “build local and import”.
If you install WAMP (or MAMP if you have a Mac) you can run your own version of PHP, WordPress and MySQL on your PC. Not only is this a great way to redesign your theme before uploading it to your site, it is also not as restricted by memory issues compared to your share hosting server.
Here are 2 great tutorials for installing WAMP and MAMP and getting WordPress up and running on your own computer:
MAMP (OS X):
Once you have created the posts, you can then export the entire WordPress MySQL database from your local phpmyadmin in MAMP and import it to your server online. You could also use tools and plugins to “clone” your local WordPress site and upload it that way, which can also be effective too.
There are also other plugins and utilities that you can use to make this process easier, such as:
I hope these tips and techniques will help you get more posts into SBPM and stop running into these pesky memory and timeout limits.
I am always looking to make SBPM versatile but also efficient and as streamlined as possible when it comes to how much memory it uses and with the next revision of the plugin, I am looking to reduce it even further.
If you have any comments on any of the solutions I have posted above, let me know in the comments box under this post. Also – if you have any other tips you want to share with the SBPM community, you can share them below too.