Follow-up on Datafeeds Podcast
Joe was talking about a custom script he had written which generated tens of thousands of HTML pages on his server (one per product). We then jumped into PopShops and DataFeedr, completely skipping over how I handle datafeeds! So I’m writing this blog post to outline another solution.
By using .htaccess, PHP and a database, you can save the datafeed in your MySQL database and use a single PHP file with some .htaccess magic to make it appear as though you have thousands of pages on your site.
The basic concept is you’ll have a URL, such as mydomain.com/kabusecha-plum-123.html but that file does not exist on your server! Instead, .htaccess intercepts the request, and rewrites it to a dynamic PHP file (item.php). The .htaccess will look like:
RewriteEngine On RewriteRule (.*)\-([0-9]+).html$ item.php?nItemID=$2 [L]
What this does is finds any requests for a file that ends in -##.html (dash, any number, dot html) and tells the server what the user really meant was item.php?nItemID=## (whatever that number was). Now your item.php file connects to the database, pulls up record $_GET[‘nItemID’] and inserts that information in your template.
Now when you have to update your template, you update just the item.php file, and all of your “.html” files are automatically updated!
I’m in talks with Loxly on coming up with a full case study on how to effectively use datafeeds for an affiliate website.