get_attribute('pa_brand');
if(!$brand) $brand='Generic';
return tr_clean($brand);
}
function tr_category($id){
$terms=get_the_terms($id,'product_cat');
if(!$terms) return 'عمومی';
return tr_clean($terms[0]->name);
}
function tr_gtin($product){
$gtin=$product->get_meta('_gtin');
if(!$gtin) $gtin=$product->get_meta('_barcode');
return $gtin;
}
/* QUERY */
$products=$wpdb->get_results("
SELECT ID,post_title
FROM {$wpdb->posts}
WHERE post_type='product'
AND post_status='publish'
");
/* XML */
$fp=fopen($tmp_file,'w');
fwrite($fp,"\n");
fwrite($fp,"\n");
$used=[];
foreach($products as $row){
$product=wc_get_product($row->ID);
if(!$product) continue;
$title=tr_title($row->post_title);
$brand=tr_brand($product);
$cat=tr_category($row->ID);
$url=get_permalink($row->ID);
$img=tr_image($row->ID);
if($product->is_type('variable')){
$vars=$product->get_available_variations();
foreach($vars as $v){
$var=wc_get_product($v['variation_id']);
if(!$var) continue;
if(!$var->is_in_stock()) continue;
$price=$var->get_price();
if($price<=0) continue;
$price=tr_price($price);
$id=$var->get_id();
if(isset($used[$id])) continue;
$sku=$var->get_sku();
$gtin=tr_gtin($var);
fwrite($fp,"\n");
fwrite($fp,"{$id}\n");
fwrite($fp,"\n");
fwrite($fp,"\n");
fwrite($fp,"\n");
fwrite($fp,"{$price}\n");
fwrite($fp,"IRR\n");
fwrite($fp,"{$url}\n");
fwrite($fp,"{$img}\n");
if($sku)
fwrite($fp,"{$sku}\n");
if($gtin)
fwrite($fp,"{$gtin}\n");
fwrite($fp,"instock\n");
fwrite($fp,"".get_bloginfo('name')."\n");
fwrite($fp,"\n");
$used[$id]=true;
}
}else{
if(!$product->is_in_stock()) continue;
$price=$product->get_price();
if($price<=0) continue;
$price=tr_price($price);
$id=$product->get_id();
if(isset($used[$id])) continue;
$sku=$product->get_sku();
$gtin=tr_gtin($product);
fwrite($fp,"\n");
fwrite($fp,"{$id}\n");
fwrite($fp,"\n");
fwrite($fp,"\n");
fwrite($fp,"\n");
fwrite($fp,"{$price}\n");
fwrite($fp,"IRR\n");
fwrite($fp,"{$url}\n");
fwrite($fp,"{$img}\n");
if($sku)
fwrite($fp,"{$sku}\n");
if($gtin)
fwrite($fp,"{$gtin}\n");
fwrite($fp,"instock\n");
fwrite($fp,"".get_bloginfo('name')."\n");
fwrite($fp,"\n");
$used[$id]=true;
}
}
fwrite($fp,"");
fclose($fp);
/* SAVE */
if(file_exists($tmp_file) && filesize($tmp_file)>500){
rename($tmp_file,$cache_file);
readfile($cache_file);
}else{
if(file_exists($cache_file)){
readfile($cache_file);
}
}
کالایی در این صفحه موجود نیست