<?php
define
('SAVE_FEED_LOCATION','media/export/feedexport.csv');//you can set a new folder and file if you want, don't forget to chmod the folder to 777

// make sure we don't time out
set_time_limit(0);    

require_once 
'app/Mage.php';
Mage::app('default');

try{
$handle fopen(SAVE_FEED_LOCATION'w');
        
$heading = array('titel','omschrijving','sku','ean','prijs''oude prijs''voorraad','productlink','afbeelding''verzendkosten''categorie');
$feed_line=implode("\t"$heading)."\r\n";
fwrite($handle$feed_line);
        
    
//---------------------- GET THE PRODUCTS    
    
$products Mage::getModel('catalog/product')->getCollection();
    
$products->addAttributeToFilter('status'1);//enabled
    
$products->addAttributeToFilter('visibility'4);//catalog, search
    
$products->addAttributeToSelect('*');
    
$prodIds=$products->getAllIds();
    
$product Mage::getModel('catalog/product');
    
    foreach(
$prodIds as $productId) {

        
$product->load($productId);
        
$product_data = array();    
        
$product_data['title']=$product->getName();
        
$product_data['description']=$product->getDescription();
        
$product_data['sku']=$product->getSku();
        
$product_data['ean']=$product->getEan();
        
$product_data['price']=number_format($product->getPrice(), 2'.''');
        
$product_data['oudeprijs']=number_format($product->getOudeprijs(), 2);
        
$product_data['availability']='Op Voorraad';
        
$product_data['link']  = Mage::getBaseUrl() . $product->getUrlKey();
        
$product_data['image_link']=Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA).'catalog/product'.$product->getImage();
        
//verzendkosten alleen berekenen onder de 80 euro
        
if (number_format($product->getPrice(), 2'.''') <  80) {
        
$product_data['shipping_rate']= "6.00";
        }
        else
        {
        
$product_data['shipping_rate']= "0.00";
        }
        
        
//load cats
        
foreach($product->getCategoryIds() as $_categoryId){
        
$category Mage::getModel('catalog/category')->load($_categoryId);
        
$product_data['product_type'].=$category->getName().', ';
        }
        
$product_data['product_type']=rtrim($product_data['product_type'],', ');        

        
//sanitize data    
        
foreach($product_data as $k=>$val){
        
$bad=array('"',"\r\n","\n","\r","\t");
        
$good=array(""," "," "," ","");
        
$product_data[$k] = '"'.str_replace($bad,$good,$val).'"';
        }
        
        
$feed_line implode("\t"$product_data)."\r\n";
        
fwrite($handle$feed_line);
        
fflush($handle);
    }
    
//---------------------- WRITE THE FEED    
    
fclose($handle);
    }
    
    catch(
Exception $e){
    die(
$e->getMessage());
}
?>