Node.js: gestire l'importazione dei prodotti di WooCommerce usando il file XML di importazione
Possiamo gestire l'importazione dei prodotti di WooCommerce in Node.js utilizzando il file XML di importazione.
Installiamo il modulo richiesto per il parsing del file XML di importazione di WooCommerce:
npm install cheerio
Quindi scriviamo:
'use strict';
const cheerio = require('cheerio');
const fs = require('fs');
const importProducts = () => {
const xml = fs.readFileSync(__dirname + '/dummy-data.xml' ).toString();
const $ = cheerio.load(xml, {
normalizeWhitespace: true,
xmlMode: true
});
let data = [];
$( 'item' ).each( (i, item) => {
let product = $( item );
let prod = {};
let type = product.find('wp\\:post_type').text();
if(type === 'product') {
prod.title = product.find('title').text();
prod.link = product.find('link').text();
prod.id = parseInt(product.find('wp\\:post_id').text(), 10);
prod.date = product.find('wp\\:post_date').text();
prod.content = product.find('content\\:encoded').text();
prod.excerpt = product.find('excerpt\\:encoded').text();
data.push(prod);
}
});
return data;
};