使用Google应用程序脚本API将Woocommerce订单详细信息集成到Google工作表时出现问题
我有一个API,可以自动将新订单的详细信息从我的Woocommerce商店拉到Google表单中。它似乎在工作,但是,它没有拉到我的谷歌表前7个订单。它拥有前7个之后的所有订单。我如何让它把前7个订单拉到表中 以下是我的谷歌应用程序脚本:使用Google应用程序脚本API将Woocommerce订单详细信息集成到Google工作表时出现问题,woocommerce,google-sheets-api,Woocommerce,Google Sheets Api,我有一个API,可以自动将新订单的详细信息从我的Woocommerce商店拉到Google表单中。它似乎在工作,但是,它没有拉到我的谷歌表前7个订单。它拥有前7个之后的所有订单。我如何让它把前7个订单拉到表中 以下是我的谷歌应用程序脚本: function start_sync() { // Followed instructions at https://github.com/mithunmanohar/woocommerce-orders-google-sheets-integratio
function start_sync() {
// Followed instructions at https://github.com/mithunmanohar/woocommerce-orders-google-sheets-integration
var sheet_name = "OrderDetails"
update_order_5_min(sheet_name)
}
function update_order_5_min(sheet_name) {
var ck = "ck_ed82fae51e5bafce28dde95224db9c9c4bd36dba";
var cs = "cs_9a16fd7b641769a65412f336de3e7a928f7e153c";
var website = "https://www.funtrackdayz.com";
var now = new Date();
var website_t ="240";
var min = website_t * 60
now.setMinutes(now.getMinutes() - min);
var n = now.toISOString();
var surl = website + "/wc-api/v3/orders?consumer_key=" + ck + "&consumer_secret=" + cs + "&status=processing&filter[created_at_min]=" + n //"&after=2016-10-27T10:10:10Z"
// var surl = website + "/wc-api/v3/orders?consumer_key=" + ck + "&consumer_secret=" + cs + "&status=processing"
// &filter[created_at_min]=" + n //"&after=2016-10-27T10:10:10Z"
var url = surl
var options = {
"method": "GET",
"Content-Type": "application/x-www-form-urlencoded;charset=UTF-8",
"muteHttpExceptions": true,
};
var result = UrlFetchApp.fetch(url, options);
if (result.getResponseCode() == 200) {
var params = JSON.parse(result.getContentText());
}
var doc = SpreadsheetApp.getActiveSpreadsheet();
var temp = doc.getSheetByName(sheet_name);
var consumption = {}
//"orders"
arrayLength = params["orders"].length
for (var i = 0; i < arrayLength; i++) {
var container = [];
a = container.push(params["orders"][i]["billing_address"]["first_name"]);
a = container.push(params["orders"][i]["billing_address"]["last_name"]);
a = container.push(params["orders"][i]["billing_address"]["address_1"] + ", " + params["orders"][i]["billing_address"]["address_2"]);
a = container.push("");
a = container.push(params["orders"][i]["billing_address"]["city"]);
a = container.push(params["orders"][i]["billing_address"]["state"]);
a = container.push(params["orders"][i]["billing_address"]["postcode"]);
a = container.push(params["orders"][i]["billing_address"]["phone"]);
a = container.push(params["orders"][i]["billing_address"]["email"]);
a = container.push(params["orders"][i]["total"]); //price
a = container.push(params["orders"][i]["payment_details"]["method_id"]);
c = params["orders"][i]["line_items"].length;
items = "";
skus="";
for (var k = 0; k < c; k++) {
item = params["orders"][i]["line_items"][k]["name"];
qty = params["orders"][i]["line_items"][k]["quantity"];
sku = params["orders"][i]["line_items"][k]["sku"];
meta = ""
try {
meta = params["orders"][i]["line_items"][k]["meta"][0]["value"];
meta = " - " + meta
} catch (err) {
meta = ""
}
item_f = qty + " x " + item + meta
items = items + item_f + ",\n"
skus = skus + ",\n"
}
a = container.push(items)
a = container.push(sku)
// a = container.push(params["orders"][i]["total_line_items_quantity"]); // Quantity
a = container.push(params["orders"][i]["order_number"]); //
a = container.push(params["orders"][i]["note"])
a = container.push(params["orders"][i]["created_at"]);
var doc = SpreadsheetApp.getActiveSpreadsheet();
var temp = doc.getSheetByName(sheet_name);
temp.appendRow(container);
removeDuplicates(sheet_name)
}
}
function removeDuplicates(sheet_name) {
var doc = SpreadsheetApp.getActiveSpreadsheet();
var sheet = doc.getSheetByName(sheet_name);
var data = sheet.getDataRange().getValues();
var newData = new Array();
for (i in data) {
var row = data[i];
var duplicate = false;
for (j in newData) {
if (row.join() == newData[j].join()) {
duplicate = true;
}
}
if (!duplicate) {
newData.push(row);
}
}
sheet.clearContents();
sheet.getRange(1, 1, newData.length, newData[0].length).setValues(newData);
}
函数启动\u同步(){
//遵照https://github.com/mithunmanohar/woocommerce-orders-google-sheets-integration
var表\u name=“订单详细信息”
更新订单5分钟(工作表名称)
}
功能更新顺序5分钟(工作表名称){
var ck=“ck \-u ed82fae51e5bafce28dde95224db9c9c4bd36dba”;
var cs=“cs_9a16fd7b641769a65412f336de3e7a928f7e153c”;
var网站=”https://www.funtrackdayz.com";
var now=新日期();
var网站\u t=“240”;
var min=网站\u t*60
now.setMinutes(now.getMinutes()-min);
var n=now.toISOString();
var surl=website+“/wc api/v3/orders?consumer_key=“+ck+”&consumer_secret=“+cs+”&status=processing&filter[created_at_min]=“+n/”&after=2016-10-27T10:10:10Z”
//var surl=website+“/wc api/v3/orders?consumer_key=“+ck+”&consumer_secret=“+cs+”&status=processing”
//&filter[created_at_min]=“n/”&after=2016-10-27T10:10:10Z”
var url=surl
变量选项={
“方法”:“获取”,
“内容类型”:“application/x-www-form-urlencoded;charset=UTF-8”,
“muteHttpExceptions”:true,
};
var result=UrlFetchApp.fetch(url,选项);
if(result.getResponseCode()==200){
var params=JSON.parse(result.getContentText());
}
var doc=SpreadsheetApp.getActiveSpreadsheet();
var temp=文件getSheetByName(工作表名称);
变量消耗={}
//“订单”
arrayLength=参数[“订单”]。长度
对于(变量i=0;i
显而易见的答案是,前7个订单发生在您请求的时间段之前。如果不是这样,请提供有关这7个最早订单的更多详细信息。是的,可能是这样。我从其他人那里获得了此项目。