"SET NAMES utf8", PDO::ATTR_ERRMODE => PDO::ERRMODE_WARNING, PDO::ATTR_CASE => PDO::CASE_LOWER ) ); header("Content-type: application/xml; charset=utf-8"); header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); header('Pragma: public'); echo ' '; $sql = "SELECT p.entity_id, p.sku, p.type_id FROM catalog_product_entity p LEFT JOIN catalog_product_website w ON w.product_id = p.entity_id WHERE w.website_id = ". $storeID ." ORDER BY p.entity_id ASC"; if($maxproducts){ $sql .= " LIMIT ". (int) $maxproducts; } $sth = $pdo->prepare($sql); $sth->execute(); $products = $sth->fetchAll(); foreach($products as $product){ $sql = "SELECT * FROM catalog_product_flat_". $storeID ." WHERE entity_id = ". $product['entity_id']; $sth = $pdo->prepare($sql); $sth->execute(); $flatproduct = $sth->fetch(); // product niet gevonden of niet zichtbaar if($flatproduct == false || $flatproduct['visibility'] < 1) continue; $special_from = !empty($flatproduct['special_from_date']) ? strtotime($flatproduct['special_from_date']) : 0; $special_to = !empty($flatproduct['special_to_date']) ? strtotime($flatproduct['special_to_date']) : 0; $price = (float) $flatproduct['price']; if( !empty($flatproduct['special_price']) && floatVal($flatproduct['special_price']) < $price && $special_from <= time() && ($special_to >= time() || $special_to == 0) ){ $price = (float) $flatproduct['special_price']; } $sql = "SELECT c.entity_id, c.name FROM catalog_category_flat_store_". $storeID ." c LEFT JOIN catalog_category_product cp ON cp.category_id = c.entity_id WHERE cp.product_id = ". $product['entity_id'] ." AND c.parent_id <> 1 ORDER BY c.level ASC"; $sth = $pdo->prepare($sql); $sth->execute(); $categories = $sth->fetchAll(); $merk = $categories[0]['name']; $categorie = $categories[1]['name']; echo ' '. htmlspecialchars($categorie) .' '. htmlspecialchars($merk) .' '. htmlspecialchars($flatproduct['name']) .' '. htmlspecialchars($flatproduct['short_description']) .' '. $basepath .'media/catalog/product'. $flatproduct['small_image'] .' '. $basepath . $flatproduct['url_path'] .' '. number_format($price, 2, '.', ',') .' '. number_format($verzendkosten, 2, '.', ',') .' Op werkdagen voor 16.00 uur besteld, de volgende dag in huis '. $product['sku'] .' '; } $time_end = microtime(true); $time = $time_end - $time_start; echo ' '; $data = ob_get_clean(); file_put_contents($cachefile, $data); echo $data; }