Я пытаюсь отсортировать сообщения блогов Shopify по метафизу «Дата события».Я вызываю мои статьи. JSON, но они не поставляются с metafields.JSON, поэтому мне нужно взять этот массив и поместить его через функцию foreach, чтобы присоединить мета-поля к каждой статье.
Вот как настроен metafields.json для каждой статьи:
{
"metafields":[
{
"id":5994805788772,
"namespace":"global",
"key":"Event-Date",
"value":"1549256400",
"value_type":"string",
"description":null,
"owner_id":15977611364,
"created_at":"2019-02-06T18:31:44-05:00",
"updated_at":"2019-02-06T18:31:44-05:00",
"owner_resource":"article"
},
{
"id":5994805821540,
"namespace":"global",
"key":"Event-Time",
"value":"6:00pm - 8:00pm",
"value_type":"string",
"description":null,
"owner_id":15977611364,
"created_at":"2019-02-06T18:31:45-05:00",
"updated_at":"2019-02-06T18:31:45-05:00",
"owner_resource":"article"
},
{
"id":6010564542564,
"namespace":"global",
"key":"Location",
"value":"18th Street Location",
"value_type":"string",
"description":null,
"owner_id":15977611364,
"created_at":"2019-02-07T13:16:05-05:00",
"updated_at":"2019-02-07T14:05:08-05:00",
"owner_resource":"article"
}
]
}
Как я прикрепляю мета поля.JSON ниже:
var request = new XMLHttpRequest();
request.open('GET', '/admin/blogs/43130421348/articles.json');
request.responseType = 'json';
request.send();
request.onload = function() {
var articleList = request.response;
var articleArray = articleList.articles;
var date = new Date();
var ticks = Math.floor(date.getTime() / 1000);
var count = 0;
articleArray.forEach(function(entry,index, object){
var metaRequest = new XMLHttpRequest();
metaRequest.open('GET', '/admin/blogs/43130421348/articles/'+ entry.id + '/metafields.json');
metaRequest.responseType = 'json';
metaRequest.send();
console.log(index);
metaRequest.onload = function() {
var articleMetaObj = metaRequest.response;
var articleMetaArr = articleMetaObj.metafields;
entry.metafields = articleMetaArr;
var eventDate = entry.metafields[0].value;
}
});
};
Я сейчаспытаясь избавиться от любой статьи, у которой есть дата («Ключ»: «Дата события»), которая уже прошла по сравнению с текущей датой.Я рассмотрел следующую Пост переполнения стека об удалении объектов в цикле foreach, но ни одно из его решений не доказывает фактического избавления от всех статей.Он будет время от времени избавляться от них, но иногда уходит в один из объектов.
Я также попробовал фильтр массива, но все, что я получил, это пустой массив, когда я его использовал.Я застрял на этом немного, поэтому любая помощь в решении этого очень ценится.